2015-04-17 9 views
14

मैं JSON ऑब्जेक्ट बनाने के लिए JsonCpp का उपयोग कर रहा हूं। ऑब्जेक्ट बनने के बाद, क्या कोई तरीका है कि मैं ऑब्जेक्ट को std::string के रूप में प्राप्त कर सकता हूं?एक जेसन कनवर्ट करना :: मूल्य से std :: स्ट्रिंग?

उत्तर

25

आप एक Json::Writer उपयोग कर सकते हैं वास्तव में यह करने के लिए, के बाद से मैं आप इसे कहीं बचाने के लिए ताकि आप मानव पठनीय उत्पादन नहीं करना चाहती चाहते मान, आपका सर्वश्रेष्ठ दांव किया जाएगा एक Json::FastWriter उपयोग करने के लिए और फिर आप write विधि कॉल कर सकते हैं (अपने जड़ यानी।) अपने Json::Value के पैरामीटर के साथ और फिर उस बस एक std::string इसलिए की तरह प्रस्तुत करती है:

Json::FastWriter fastWriter; 
std::string output = fastWriter.write(root); 
+1

हालांकि इस महान काम करता है, JsonCPP के वर्तमान संस्करण का कहना है Json :: FastWriter Json के पक्ष में पदावनत कर दिया गया है :: StreamWriterBuilder। लेकिन एक स्ट्रिंग को लिखने की कार्यक्षमता को हटा दिया गया था, और अब एक std :: स्ट्रिंगस्ट्रीम को लिखना आवश्यक है। क्या आप इसे विस्तार में बताने में सक्षम हैं? – nico

संबंधित मुद्दे