स्वरूपित WINAPI में फ़ाइल में लिखें - सी ++, सी, विजुअल-स्टूडियो -2010, winapi, io

साथ में WriteFile आदेश, मैं अपनी इच्छा के डिजाइन में फ़ाइल लिखने की कोशिश कर रहा हूं। समस्या यह है कि मुझे स्ट्रिंग या बफर का उपयोग करके फ़ाइल में लिखना है।

मुझे प्रारूप में प्रिंट करना होगा:

a1   a2   a3   a4   a5
b1   b2   b3   b4   b5
.
.
.

और ये दोहरे प्रकार हैं। मेरी बड़ी समस्या स्ट्रिंग और संख्याओं को जोड़ रही है। यदि यह संभव है तो मैं बस कर सकता हूं, (अगर कहें तो + ऑपरेटर है, हम कर सकते हैं :)

a1^"   "^a2^"   "^   "^a4"n".

और लूप लेकिन मेरे पास वह विकल्प नहीं है।

मैं किसी भी मदद की सराहना करता हूं।

उत्तर:

उत्तर № 1 के लिए 1

एक विकल्प का उपयोग करना है std::ostringstream (या std::wostringstream विस्तृत वर्णों के लिए) डेटा को स्ट्रिंग में प्रारूपित करने के लिए इसे फ़ाइल में लिखें।

std::ostringstream strm;
double a = 1.1;
double b = 2.2;
strm << "hello " << a << " world " << b;

DWORD written;
WriteFile(handle, strm.str().c_str(), strm.str().size(), &written, NULL);

जवाब के लिए 2 № 2

डेटा को बफर में प्री-फॉर्मेट करें। यदि आप वास्तव में केवल WinAPI का उपयोग कर सकते हैं, तो आप इसे कर सकते हैं wsprintf। फिर, जब आपके पास सही रूप से स्वरूपित डेटा से भरा बफर होता है, तो पूरी चीज़ को एक साथ डिस्क पर लिखें WriteFile। अपने आप से, हालांकि, WriteFile किसी भी स्वरूपण या रूपांतरण क्षमताओं में बिल्कुल नहीं है।


संबंधित सवाल
सबसे लोकप्रिय