"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > फ़ाइल के बजाय मेमोरी बफ़र में TiXml आउटपुट कैसे लिखें?

फ़ाइल के बजाय मेमोरी बफ़र में TiXml आउटपुट कैसे लिखें?

2024-11-16 को प्रकाशित
ब्राउज़ करें:434

How to Write TiXml Output to a Memory Buffer Instead of a File?

TiXml में आउटपुट के लिए फ़ाइल* के रूप में एक मेमोरी बफर बनाना

कुछ परिदृश्यों में, मेमोरी बफर में TiXml आउटपुट लिखने की क्षमता इसके बजाय एक फ़ाइल उपयोगी हो सकती है। हालाँकि, इसे संभालने के लिए TiXml में कोई प्रत्यक्ष कार्यक्षमता नहीं है। फ़ाइल के रूप में एक मेमोरी बफ़र*:

fmemopen:

एक बनाता है मौजूदा मेमोरी बफर से FILE* ऑब्जेक्ट। &&&]

    #include शून्य writeXmlToMemoryBuffer(TiXmlDocument& doc) { // एक मेमोरी बफर बनाएं चार बफ़र[1024]; // बफ़र को FILE* ऑब्जेक्ट के रूप में खोलें फ़ाइल* fp = fmemopen(बफ़र, आकार(बफ़र), "w"); // XML दस्तावेज़ को FILE* ऑब्जेक्ट के माध्यम से मेमोरी बफर में लिखें दस्तावेज़.प्रिंट(एफपी); // फ़ाइल* ऑब्जेक्ट बंद करें एफक्लोज(एफपी); }
  • इस उदाहरण में, fmemopen फ़ंक्शन लिखने के लिए फ़ाइल मोड "w" के साथ मेमोरी बफर बफर और उसके आकार को तर्क के रूप में लेता है। Doc.Print विधि फिर XML दस्तावेज़ को fp FILE* ऑब्जेक्ट के माध्यम से मेमोरी बफर में लिखती है।
  • उदाहरण open_memstream का उपयोग करना:
#include #शामिल करें शून्य writeXmlToMemoryBuffer(TiXmlDocument& doc) { std::ostringstream बफ़र; doc.प्रिंट(&बफर); std::cout इस उदाहरण में, open_memstream फ़ंक्शन का स्पष्ट रूप से उपयोग नहीं किया जाता है, लेकिन sstream लाइब्रेरी समान कार्यक्षमता प्रदान करती है। यह एक स्ट्रिंग बफ़र ऑब्जेक्ट (बफ़र) और एक FILE ऑब्जेक्ट (&बफ़र) एक साथ बनाता है। Doc.Print विधि FILE ऑब्जेक्ट के माध्यम से XML दस्तावेज़ को मेमोरी बफर में लिखती है। मेमोरी बफ़र की सामग्री को एक स्ट्रिंग के रूप में एक्सेस किया जा सकता है।
#include 

void writeXmlToMemoryBuffer(TiXmlDocument& doc) {
    // Create a memory buffer
    char buffer[1024];

    // Open the buffer as a FILE* object
    FILE* fp = fmemopen(buffer, sizeof(buffer), "w");

    // Write the XML document to the memory buffer through the FILE* object
    doc.Print(fp);

    // Close the FILE* object
    fclose(fp);
}
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3