C++ అనేది JSON డేటాతో వ్యవహరించడానికి లైబ్రరీల సమితిని కలిగి ఉన్న బహుముఖ భాష. జావాస్క్రిప్ట్ ఆబ్జెక్ట్ నొటేషన్ (JSON) అనేది డేటా ఇంటర్ఛేంజ్ కోసం ఒక ఫార్మాట్, ఇది మానవులకు వ్రాయడం మరియు చదవడం సులభం మరియు యంత్రాలు సులభంగా ఉత్పత్తి చేయగలవు మరియు అన్వయించగలవు. ఇది వెబ్ అప్లికేషన్లు మరియు సర్వర్ల మధ్య డేటాను ప్రసారం చేయడానికి మరియు డేటాను నిల్వ చేయడానికి అలాగే ఫైల్ల కాన్ఫిగరేషన్ కోసం ఉపయోగించబడుతుంది.
C++లో JSON ఫైల్లను ఎలా చదవాలి మరియు వ్రాయాలి
JSON అనేది డేటా ఫార్మాట్, ఇది వెబ్లో నిర్మాణాత్మక డేటాను నిల్వ చేయడానికి మరియు బదిలీ చేయడానికి ఇష్టపడే మార్గం. ఇది తేలికైనది, ఇది డేటా బదిలీని సులభతరం చేస్తుంది మరియు డేటా బదిలీ యొక్క మెరుగైన సామర్థ్యం మరియు ప్రాసెసింగ్కు దారితీస్తుంది. C++లో రాపిడ్జసన్ అనేది JSONని అన్వయించడానికి మరియు రూపొందించడానికి ఫంక్షన్లను కలిగి ఉన్న లైబ్రరీ. ఈ లైబ్రరీ JSON డేటాను చదవడానికి మరియు వ్రాయడానికి ఒకరిని ఎనేబుల్ చేయడమే కాకుండా JSON యొక్క ఆబ్జెక్ట్ల తారుమారు మరియు ధ్రువీకరణను కూడా అనుమతిస్తుంది. ఇది స్ట్రీమింగ్ పద్ధతిలో JSON యొక్క పెద్ద డేటాసెట్లను నిర్వహించడానికి ఫంక్షన్లకు కూడా మద్దతు ఇస్తుంది.
రాపిడ్జసన్ని ఉపయోగించి JSON డేటాను చదవడానికి మరియు వ్రాయడానికి, రాపిడ్జేసన్:: డాక్యుమెంట్ క్లాస్ ఉపయోగించబడుతుంది. ఈ తరగతి ఒక ఫైల్ నుండి JSON డేటాను రూపొందించడానికి మరియు అన్వయించడానికి ఒక ఉన్నత-స్థాయి APIని అందిస్తుంది మరియు డేటా యొక్క తారుమారుని కూడా సాధ్యం చేస్తుంది.
C++లో JSON ఫైల్ నుండి డేటాను చదవడానికి ఉదాహరణ
రాపిడ్జసన్ లైబ్రరీని ఉపయోగించి C++లోని JSON ఫైల్ నుండి డేటాను చదవడానికి ఇది ఒక ఉదాహరణ కోడ్:
#'rapidjson/document.h'ని చేర్చండి
#'rapidjson/stringbuffer.h'ని చేర్చండి
#'rapidjson/filereadstream.h'ని చేర్చండి
#
#
నేమ్స్పేస్ రాపిడ్జోన్ ఉపయోగించడం;
పూర్ణాంక ప్రధాన ( )
{
// తెరవండి ఫైల్ కోసం చదవడం
ఫైల్ * fp = ఫోపెన్ ( 'example.json' , 'r' ) ;
// ఫైల్రీడ్స్ట్రీమ్ని ఉపయోగించండి
// చదవండి నుండి డేటా ఫైల్
చార్ రీడ్బఫర్ [ 65536 ] ;
fastjson :: FileReadStream ఉంది ( fp, రీడ్బఫర్,
పరిమాణం ( రీడ్బఫర్ ) ) ;
// JSON డేటాను అన్వయించండి
// డాక్యుమెంట్ వస్తువును ఉపయోగించడం
రాపిడ్జ్సన్:: డాక్యుమెంట్ డి;
d.ParseStream ( ఉంది ) ;
// మూసివేయి ఫైల్
fclose ( fp ) ;
// డేటాను యాక్సెస్ చేయండి లో JSON పత్రం
std::cout << డి [ 'పేరు' ] .GetString ( ) << std::endl;
std::cout << డి [ 'వయస్సు' ] .లేతరంగు ( ) << std::endl;
తిరిగి 0 ;
}
ఫైల్ను తెరవడానికి fopen() ఫంక్షన్ ఉపయోగించబడుతుంది. హెడర్ ఫైల్ <<#include “rapidjson/filereadstream.h”>> ఫైల్ డేటాను json అని పేరు పెట్టబడిన స్ట్రింగ్లో చదువుతుంది. ఫైల్ యొక్క డేటాను ఉంచడానికి డాక్యుమెంట్ డాక్యుమెంట్ సృష్టించబడింది. స్ట్రింగ్ అన్వయించబడింది మరియు దాని లోపాలు తనిఖీ చేయబడతాయి, లోపాలు కనుగొనబడితే అది ఎర్రర్ను అందిస్తుంది లేకపోతే JSON డేటాను యాక్సెస్ చేయడానికి పత్రం ఉపయోగించబడుతుంది.
C++లో JSON ఫైల్కి డేటాను వ్రాయడానికి ఉదాహరణ
డాక్యుమెంట్ క్లాస్ని సృష్టించడం ద్వారా JSON ఫైల్లలో డేటాను వ్రాయడానికి రాపిడ్జసన్ లైబ్రరీని ఉపయోగించవచ్చు. C++లో JSON ఫైల్కు డేటాను వ్రాయడానికి ఇది ఒక ఉదాహరణ కోడ్:
#'rapidjson/document.h'ని చేర్చండి
#'rapidjson/filereadstream.h'ని చేర్చండి
#'rapidjson/filewritestream.h'ని చేర్చండి
#'rapidjson/writer.h'ని చేర్చండి
నేమ్స్పేస్ రాపిడ్జోన్ ఉపయోగించడం;
పూర్ణాంక ప్రధాన ( )
{
// JSON చదవండి ఫైల్
ఫైల్ * fp
= ఫోపెన్ ( 'example.json' , 'rb' ) ;
చార్ రీడ్బఫర్ [ 65536 ] ;
FileReadStream ఉంది ( fp, readBuffer, sizeof ( రీడ్బఫర్ ) ) ;
పత్రం d;
d.ParseStream ( ఉంది ) ;
fclose ( fp ) ;
విలువ & s = డి [ 'పేరు' ] ;
s.SetString ( 'సైమన్' , d.GetAllocator ( ) ) ;
// JSON అని వ్రాయండి ఫైల్
ఫైల్ * fp2 = ఫోపెన్ ( 'example_modified.json' ,
'wb' ) ;
చార్ రైట్ బఫర్ [ 65536 ] ;
FileWriteStream os ( fp2, రైట్బఫర్,
పరిమాణం ( వ్రాయుబఫర్ ) ) ;
రచయిత < ఫైల్ రైట్ స్ట్రీమ్ > రచయిత ( మీరు ) ;
d.అంగీకరించు ( రచయిత ) ;
fclose ( fp2 ) ;
తిరిగి 0 ;
}
ఈ ప్రోగ్రామ్ రాపిడ్జోన్ని చేర్చడానికి ప్రామాణిక హెడర్ ఫైల్లను ఉపయోగిస్తుంది. డాక్యుమెంట్ ఆబ్జెక్ట్ JSON ఫైల్ డేటాను కలిగి ఉంటుంది. సభ్యుని పేరు మరియు వయస్సు JSON ఆబ్జెక్ట్కి జోడించబడ్డాయి. అవుట్పుట్ ఫైల్ స్ట్రీమ్ సృష్టించబడింది మరియు ఫైల్కి డేటాను వ్రాయడానికి సిద్ధం చేయబడింది.
పేరు మరియు వయస్సు రెండూ ఫైల్లో వ్రాయబడతాయి మరియు అవుట్పుట్ టెర్మినల్లో ప్రదర్శించబడతాయి.
ముగింపు
JSON అనేది డేటా ఫార్మాట్, ఇది బదిలీ కోసం డేటా పరిమాణాన్ని తగ్గించడం సాధ్యం చేస్తుంది మరియు డేటా బదిలీ యొక్క మెరుగైన సామర్థ్యం మరియు ప్రాసెసింగ్లో ఫలితాలు. రాపిడ్జసన్ని ఉపయోగించి JSON డేటాను చదవడానికి మరియు వ్రాయడానికి, రాపిడ్జేసన్:: డాక్యుమెంట్ క్లాస్ ఉపయోగించబడుతుంది. ఈ తరగతి ఒక ఫైల్ నుండి JSON డేటాను రూపొందించడానికి మరియు అన్వయించడానికి ఒక ఉన్నత-స్థాయి APIని అందిస్తుంది మరియు డేటా యొక్క తారుమారుని కూడా సాధ్యం చేస్తుంది.