Kā lasīt un rakstīt JSON failus programmā C++

Ka Lasit Un Rakstit Json Failus Programma C



C++ ir daudzpusīga valoda, kurā ir bibliotēku kopa, lai apstrādātu JSON datus. JavaScript Object Notation (JSON) ir datu apmaiņas formāts, ko cilvēki var viegli rakstīt un lasīt, un mašīnas var viegli ģenerēt un parsēt. To izmanto datu pārsūtīšanai starp tīmekļa lietojumprogrammām un serveriem, kā arī datu glabāšanai, kā arī failu konfigurēšanai.

Kā lasīt un rakstīt JSON failus programmā C++

JSON ir datu formāts, kas ir vēlamais veids strukturētu datu glabāšanai un pārsūtīšanai tīmeklī. Tas ir viegls, kas atvieglo datu pārsūtīšanu un uzlabo datu pārsūtīšanas efektivitāti un apstrādi. Programmā C++ rapidjson ir bibliotēka, kurai ir JSON parsēšanas un ģenerēšanas funkcijas. Šī bibliotēka ne tikai ļauj lasīt un rakstīt JSON datus, bet arī ļauj manipulēt un apstiprināt JSON objektus. Tā atbalsta arī funkcijas lielu JSON datu kopu apstrādei straumēšanas veidā.







Lai lasītu un rakstītu JSON datus, izmantojot rapidjson, tiek izmantota rapidjson::Document klase. Šī klase nodrošina augsta līmeņa API JSON datu ģenerēšanai un parsēšanai no faila, kā arī ļauj manipulēt ar datiem.



Piemērs datu lasīšanai no JSON faila programmā C++

Šis ir koda piemērs datu nolasīšanai no JSON faila programmā C++, izmantojot rapidjson bibliotēku:



#include 'rapidjson/document.h'
#include 'rapidjson/stringbuffer.h'
#include 'rapidjson/filereadstream.h'
#include
#include

izmantojot namespace rapidjson;

int galvenais ( )
{
// Atveriet failu priekš lasīšana
FILE * fp = fopen ( 'example.json' , 'r' ) ;

// Izmantojiet FileReadStream, lai
// lasīt dati no failu
char readBuffer [ 65536 ] ;
rapidjson::FileReadStream ir ( fp, lasīšanas buferis,
izmērs ( lasīšanas buferis ) ) ;

// Parsējiet JSON datus
// izmantojot dokumentu objektu
rapidjson::Dokuments;
d.ParseStream ( ir ) ;

// Aizveriet failu
fclose ( fp ) ;

// Piekļūstiet datiem iekšā JSON dokumentu
std::cout << d [ 'Vārds' ] .GetString ( ) << std::endl;
std::cout << d [ 'Vecums' ] .Tonēts ( ) << std::endl;

atgriezties 0 ;
}


Funkcija fopen () tiek izmantota, lai atvērtu failu. Galvenes fails <<#include “rapidjson/filereadstream.h”>> nolasa faila datus virknē, kas tiek nosaukta kā json. Dokumenta dokuments tiek izveidots, lai saglabātu faila datus. Virkne tiek parsēta un tās kļūdas tiek pārbaudītas, ja tiek atrastas kļūdas, tā atgriež kļūdu, pretējā gadījumā dokuments tiek izmantots, lai piekļūtu JSON datiem.





Piemērs datu ierakstīšanai JSON failā programmā C++

Rapidjson bibliotēku var izmantot, lai ierakstītu datus JSON failos, izveidojot dokumentu klasi. Šis ir koda piemērs datu ierakstīšanai JSON failā C++:



#include 'rapidjson/document.h'
#include 'rapidjson/filereadstream.h'
#include 'rapidjson/filewritestream.h'
#include 'rapidjson/writer.h'

izmantojot namespace rapidjson;

int galvenais ( )
{
// Lasiet JSON failu
FILE * fp
= fopen ( 'example.json' , 'rb' ) ;
char readBuffer [ 65536 ] ;
FileReadStream ir ( fp, lasīšanas buferis, izmērs ( lasīšanas buferis ) ) ;
dokuments d;
d.ParseStream ( ir ) ;
fclose ( fp ) ;


Vērtība & s = d [ 'Vārds' ] ;
s.SetString ( 'Saimons' , d.GetAllocator ( ) ) ;

// Uzrakstiet JSON failu
FILE * fp2 = fopen ( 'example_modified.json' ,
'wb' ) ;
char writeBuffer [ 65536 ] ;
FileWriteStream OS ( fp2, writeBuffer,
izmērs ( writeBuffer ) ) ;
rakstnieks < FileWriteStream > rakstnieks ( tu ) ;
d.Pieņemt ( rakstnieks ) ;
fclose ( fp2 ) ;

atgriezties 0 ;
}


Šī programma izmanto standarta galvenes failus, lai iekļautu rapidjson. Objektā Dokuments ir JSON faila dati. Dalībnieka vārds un vecums tiek pievienots JSON objektam. Tiek izveidota izvades faila straume un sagatavota datu ierakstīšanai failā.


Vārds un vecums ir ierakstīti failā un tiek parādīti izvades terminālī.

Secinājums

JSON ir datu formāts, kas ļauj samazināt pārsūtīšanai paredzēto datu apjomu un uzlabo datu pārsūtīšanas efektivitāti un apstrādi. Lai lasītu un rakstītu JSON datus, izmantojot rapidjson, tiek izmantota rapidjson::Document klase. Šī klase nodrošina augsta līmeņa API JSON datu ģenerēšanai un parsēšanai no faila, kā arī ļauj manipulēt ar datiem.