C++ में JSON फ़ाइलें कैसे पढ़ें और लिखें

C Mem Json Fa Ilem Kaise Parhem Aura Likhem



C++ एक बहुमुखी भाषा है जिसमें JSON डेटा से निपटने के लिए पुस्तकालयों का एक सेट है। जावास्क्रिप्ट ऑब्जेक्ट नोटेशन (JSON) डेटा इंटरचेंज का एक प्रारूप है जो मनुष्यों के लिए लिखना और पढ़ना आसान है और मशीनें आसानी से उत्पन्न और पार्स कर सकती हैं। इसका उपयोग वेब एप्लिकेशन और सर्वर के बीच डेटा के प्रसारण और डेटा को संग्रहीत करने के साथ-साथ फ़ाइलों के कॉन्फ़िगरेशन के लिए किया जाता है।

C++ में JSON फ़ाइलें कैसे पढ़ें और लिखें

JSON एक डेटा प्रारूप है जो वेब पर संरचित डेटा को संग्रहीत और स्थानांतरित करने का एक पसंदीदा तरीका है। यह हल्का है, जो डेटा के हस्तांतरण को आसान बनाता है और इसके परिणामस्वरूप डेटा स्थानांतरण की दक्षता और प्रसंस्करण में सुधार होता है। C++ में Rapidjson एक लाइब्रेरी है जिसमें JSON को पार्स करने और उत्पन्न करने के कार्य हैं। यह लाइब्रेरी न केवल JSON डेटा को पढ़ने और लिखने में सक्षम बनाती है बल्कि JSON की वस्तुओं के हेरफेर और सत्यापन की भी अनुमति देती है। यह स्ट्रीमिंग तरीके से JSON के बड़े डेटासेट को संभालने के लिए फ़ंक्शन का भी समर्थन करता है।







Rapidjson का उपयोग करके JSON डेटा को पढ़ने और लिखने के लिए, Rapidjson::Document वर्ग का उपयोग किया जाता है। यह वर्ग किसी फ़ाइल से JSON डेटा उत्पन्न करने और पार्स करने के लिए एक उच्च-स्तरीय एपीआई प्रदान करता है और डेटा में हेरफेर भी संभव बनाता है।



C++ में JSON फ़ाइल से डेटा पढ़ने का उदाहरण

रैपिडजसन लाइब्रेरी का उपयोग करके C++ में JSON फ़ाइल से डेटा पढ़ने के लिए यह एक उदाहरण कोड है:



#शामिल करें 'रैपिडजसन/डॉक्यूमेंट.एच'
#शामिल है 'रैपिडजसन/स्ट्रिंगबफर.एच'
#शामिल है 'रैपिडजसन/फाइलरीडस्ट्रीम.एच'
#शामिल
#शामिल करें

नेमस्पेस रैपिडजसन का उपयोग करना;

मुख्य प्रवेश बिंदु ( )
{
// खोलें फ़ाइल के लिए पढ़ना
फ़ाइल * एफपी = फ़ोपेन ( 'example.json' , 'आर' ) ;

// इसके लिए FileReadStream का उपयोग करें
// पढ़ना से डेटा फ़ाइल
चार रीडबफ़र [ 65536 ] ;
Rapidjson::FileReadStream है ( एफपी, रीडबफर,
का आकार ( readBuffer ) ) ;

// JSON डेटा को पार्स करें
// दस्तावेज़ ऑब्जेक्ट का उपयोग करना
Rapidjson::दस्तावेज़ d;
डी. पार्सस्ट्रीम ( है ) ;

// बंद कर दो फ़ाइल
fclose ( एफपी ) ;

// डेटा तक पहुंचें में JSON दस्तावेज़
std::cout << डी [ 'नाम' ] .गेटस्ट्रिंग ( ) << std::endl;
std::cout << डी [ 'आयु' ] .रंगा हुआ ( ) << std::endl;

वापस करना 0 ;
}


फ़ाइल को खोलने के लिए fopen() फ़ंक्शन का उपयोग किया जाता है। हेडर फ़ाइल <<#include “rapidjson/filereadstream.h”>> फ़ाइल के डेटा को एक स्ट्रिंग में पढ़ती है जिसे json नाम दिया गया है। दस्तावेज़ दस्तावेज़ फ़ाइल का डेटा रखने के लिए बनाया गया है। स्ट्रिंग को पार्स किया जाता है, और इसकी त्रुटियों की जाँच की जाती है, यदि त्रुटियाँ पाई जाती हैं तो यह एक त्रुटि देता है अन्यथा JSON के डेटा तक पहुँचने के लिए दस्तावेज़ का उपयोग किया जाता है।





C++ में JSON फ़ाइल में डेटा लिखने का उदाहरण

रैपिडजसन लाइब्रेरी का उपयोग दस्तावेज़ वर्ग बनाकर JSON फ़ाइलों में डेटा लिखने के लिए किया जा सकता है। यह C++ में JSON फ़ाइल में डेटा लिखने के लिए एक उदाहरण कोड है:



#शामिल करें 'रैपिडजसन/डॉक्यूमेंट.एच'
#शामिल है 'रैपिडजसन/फाइलरीडस्ट्रीम.एच'
#शामिल है 'रैपिडजसन/फाइलराइटस्ट्रीम.एच'
#शामिल है 'रैपिडजसन/राइटर.एच'

नेमस्पेस रैपिडजसन का उपयोग करना;

मुख्य प्रवेश बिंदु ( )
{
// JSON पढ़ें फ़ाइल
फ़ाइल * एफपी
= फ़ोपेन ( 'example.json' , 'आरबी' ) ;
चार रीडबफ़र [ 65536 ] ;
FileReadStream है ( एफपी, रीडबफर, साइजऑफ ( readBuffer ) ) ;
दस्तावेज़ डी;
डी. पार्सस्ट्रीम ( है ) ;
fclose ( एफपी ) ;


कीमत & एस = डी [ 'नाम' ] ;
एस.सेटस्ट्रिंग ( 'साइमन' , डी.गेटअलोकेटर ( ) ) ;

// JSON लिखें फ़ाइल
फ़ाइल * fp2 = fopen ( 'example_modified.json' ,
'डब्ल्यूबी' ) ;
चार राइटबफ़र [ 65536 ] ;
फाइलराइटस्ट्रीम ओएस ( fp2, राइटबफ़र,
का आकार ( राइटबफ़र ) ) ;
लेखक < फाइलराइटस्ट्रीम > लेखक ( आप ) ;
घ. स्वीकार करें ( लेखक ) ;
fclose ( एफपी2 ) ;

वापस करना 0 ;
}


यह प्रोग्राम रैपिडजॉन को शामिल करने के लिए मानक हेडर फ़ाइलों का उपयोग करता है। दस्तावेज़ ऑब्जेक्ट JSON फ़ाइल का डेटा रखता है। सदस्य का नाम और उम्र JSON ऑब्जेक्ट में जोड़ी जाती है। फ़ाइल में डेटा लिखने के लिए एक आउटपुट फ़ाइल स्ट्रीम बनाई और तैयार की जाती है।


नाम और उम्र दोनों फ़ाइल में लिखे गए हैं और आउटपुट टर्मिनल पर प्रदर्शित किए गए हैं।

निष्कर्ष

JSON एक डेटा प्रारूप है जो स्थानांतरण के लिए डेटा के आकार को कम करना संभव बनाता है और इसके परिणामस्वरूप डेटा स्थानांतरण की दक्षता और प्रसंस्करण में सुधार होता है। Rapidjson का उपयोग करके JSON डेटा को पढ़ने और लिखने के लिए, Rapidjson::Document वर्ग का उपयोग किया जाता है। यह वर्ग किसी फ़ाइल से JSON डेटा उत्पन्न करने और पार्स करने के लिए एक उच्च-स्तरीय एपीआई प्रदान करता है और डेटा में हेरफेर भी संभव बनाता है।