get contents of data array from fwrite parameter - to print out data with objective-c -
मेरे पास कुछ कोड है जो इसे पढ़ता है:
int SaveTemplateToFile (चार * नाम, FTR_DATA खाका) {// एनएसएलॉग (@ "फ़ाइल में टेम्पलेट को सहेजने की कोशिश कर रहा है"); फ़ाइल * एफपी; fp = fopen (नाम, "w + b"); अगर (एफपी == नल) वापसी गलत; इंट रिजल्ट = फ्राइट (टेम्पलेट। पीडीएटा, 1, टेम्पलेट। डीएससीआईएस, एफपी) == टेम्पलेट डीवसिज़? सही गलत; fclose (एफपी); वापसी परिणाम; } मुझे समझ में आ रहा है कि यह Template.pData से प्राप्त फाइल को नाम में संग्रहीत फ़ाइल में लिखा जाएगा। चर। यह .tmpl की सामग्री पढ़ता है:
कार्य / प्रश्न:
मैं बस इस डेटा को एक चर में संग्रहीत करने की कोशिश कर रहा हूं ताकि मैं इस डेटा को अपने वेबसर्वर डेटाबेस में भेज सकूं और उसे एक में संग्रहीत कर सकूं बाद में समय की पुनःप्राप्ति के लिए ब्लॉब फ़ाइल। यह मुझे fwrite फ़ंक्शन से छुटकारा पाने की भी अनुमति देता है, जिसे मैं स्थानीय रूप से भंडारण के बजाय सबबर्सवर पर सब कुछ भंडारण के बाद की आवश्यकता नहीं चाहता। मुझे वर्तमान में इसे पढ़ने में परेशानी हो रही है जानकारी। इस डेटा सरणी को आउटपुट करने की कोशिश करते समय मुझे दुर्घटना हो रही है, मैं यह भी प्रस्तुत करता हूं कि डेटाटाइप संरचना कैसी दिखती है:
जहां डीजीटीवीआईडी का टाइप किया गया है void DGTVOID । मैं कैसे सही ढंग से टेम्पलेट की सामग्री पढ़ें? मैं सोच रहा था अगर मुझे समझ में आया कि यह डेटाैट क्या है, तो मैं डेटा को ठीक करने में सक्षम होगा।
अपडेट 1
पॉलवैक 11 के लिए धन्यवाद मैं बहुत कम भाग का उपयोग कर रहा हूं % s के बजाय % @ का उपयोग कर डेटा जो मूल रूप से दुर्घटना का कारण बनता है यहां जो कुछ भी छपा हुआ है, वह कुछ काल्पनिक उल्टा प्रश्न चिह्न है:
क्या इस डेटास्ट्रीम की सामग्री को Template.pData से पहले फाइल के रूप में दिशा में डेटा को सहेजने के बिना आउटपुट करने का कोई तरीका है?
मुझे लगता है कि आपको क्या करना चाहिए पहली चीज आपके बफ़र को एनएसडीटा उदाहरण में बदल देती है -
< कोड> एनएसडीटा टेम्पलेट = [एनएसडीटा डेटाविथबाइट्स: टेम्पलेट.pdata लंबाई: Template.dwSize]; एक बार आपके पास एक बार जब आप एक वेब अनुरोध पर ट्रांसमिशन के लिए Base64 एन्कोड कर सकते हैं -
NSString * templateStr = [template base64EncodedStringWithOptions: 0]; यदि आप iOS7 से पहले एक संस्करण को लक्षित कर रहे हैं, तो आप बहिष्कृत विधि का उपयोग कर सकते हैं
NSString * templateStr = [template6464]
Comments
Post a Comment