Cara Membaca dan Menulis Fail JSON dalam C++

Cara Membaca Dan Menulis Fail Json Dalam C



C++ ialah bahasa serba boleh yang mempunyai satu set perpustakaan untuk menangani data JSON. Notasi Objek JavaScript (JSON) ialah format untuk pertukaran data yang mudah untuk ditulis dan dibaca oleh manusia dan mesin boleh menjana dan menghuraikan dengan mudah. Ia digunakan untuk penghantaran data antara aplikasi web dan pelayan, dan untuk menyimpan data, serta konfigurasi fail.

Cara Membaca dan Menulis Fail JSON dalam C++

JSON ialah format data yang merupakan cara pilihan untuk menyimpan dan memindahkan data berstruktur di web. Ia ringan, yang menjadikan pemindahan data mudah dan menghasilkan kecekapan dan pemprosesan pemindahan data yang lebih baik. Dalam C++ rapidjson ialah perpustakaan yang mempunyai fungsi untuk menghuraikan dan menjana JSON. Pustaka ini bukan sahaja membolehkan seseorang membaca dan menulis data JSON tetapi juga membenarkan manipulasi dan pengesahan objek JSON. Ia juga menyokong fungsi untuk mengendalikan set data besar JSON dalam fesyen penstriman.







Untuk membaca dan menulis data JSON menggunakan rapidjson, kelas rapidjson::Document digunakan. Kelas ini menyediakan API peringkat tinggi untuk menjana dan menghuraikan data JSON daripada fail dan juga memungkinkan manipulasi data.



Contoh untuk Membaca Data daripada Fail JSON dalam C++

Ini ialah kod contoh untuk membaca data daripada fail JSON dalam C++ menggunakan perpustakaan rapidjson:



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

menggunakan ruang nama rapidjson;

int utama ( )
{
// Buka fail untuk membaca
FAIL * fp = fopen ( 'example.json' , 'r' ) ;

// Gunakan FileReadStream untuk
// membaca data daripada fail
char readBuffer [ 65536 ] ;
rapidjson::FileReadStream ialah ( fp, readBuffer,
saiz ( readBuffer ) ) ;

// Menghuraikan data JSON
// menggunakan objek Dokumen
rapidjson::Dokumen d;
d.ParseStream ( ialah ) ;

// Menutup fail
tutup ( fp ) ;

// Akses data dalam dokumen JSON
std::cout << d [ 'Nama' ] .GetString ( ) << std::endl;
std::cout << d [ 'Umur' ] .Berwarna ( ) << std::endl;

kembali 0 ;
}


Fungsi fopen() digunakan untuk membuka fail. Fail pengepala <<#include “rapidjson/filereadstream.h”>> membaca data fail dalam rentetan yang dinamakan sebagai json. Dokumen dokumen dicipta untuk menyimpan data fail. Rentetan dihuraikan dan ralatnya diperiksa, jika ralat ditemui ia mengembalikan ralat jika tidak, Dokumen digunakan untuk mengakses data JSON.





Contoh untuk Menulis Data ke Fail JSON dalam C++

Pustaka rapidjson boleh digunakan untuk menulis data dalam fail JSON dengan membuat kelas Dokumen. Ini ialah kod contoh untuk menulis data ke fail JSON dalam C++:



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

menggunakan ruang nama rapidjson;

int utama ( )
{
// Baca JSON fail
FAIL * fp
= fopen ( 'example.json' , 'rb' ) ;
char readBuffer [ 65536 ] ;
FileReadStream ialah ( fp, readBuffer, sizeof ( readBuffer ) ) ;
Dokumen d;
d.ParseStream ( ialah ) ;
tutup ( fp ) ;


Nilai & s = d [ 'Nama' ] ;
s.SetString ( 'Simon' , d.GetAllocator ( ) ) ;

// Tulis JSON fail
FAIL * fp2 = fopen ( 'example_modified.json' ,
'wb' ) ;
char writeBuffer [ 65536 ] ;
FileWriteStream os ( fp2, writeBuffer,
saiz ( writeBuffer ) ) ;
Penulis < FileWriteStream > penulis ( awak ) ;
d.Terima ( penulis ) ;
tutup ( fp2 ) ;

kembali 0 ;
}


Program ini menggunakan fail pengepala standard untuk memasukkan rapidjson. Objek Dokumen memegang data fail JSON. Nama dan umur ahli ditambahkan pada objek JSON. Strim fail output dibuat dan disediakan untuk menulis data ke fail.


Nama dan umur kedua-duanya ditulis dalam fail dan dipaparkan pada terminal output.

Kesimpulan

JSON ialah format data yang memungkinkan untuk mengurangkan saiz data untuk pemindahan dan menghasilkan kecekapan dan pemprosesan pemindahan data yang lebih baik. Untuk membaca dan menulis data JSON menggunakan rapidjson, kelas rapidjson::Document digunakan. Kelas ini menyediakan API peringkat tinggi untuk menjana dan menghuraikan data JSON daripada fail dan juga memungkinkan manipulasi data.