2009-08-07 8 views
7

मैंने सफलतापूर्वक एक txt फ़ाइल (यानी फ़ाइल मौजूद है और खुलती है) बनाई है, मैं इसे एक ईमेल से जोड़ना चाहता हूं जिसे मैं सफलतापूर्वक उत्पन्न कर रहा हूं (यानी ईमेल खुलता है और मैं टेक्स्ट डाल सकता हूं ईमेल इत्यादि। और इसे भेजें)।ईमेल पर एक टेक्स्ट फ़ाइल संलग्न करना

// Attach a file to the email 
NSString *path = [self dataFilePath:(@"myFile.txt")]; 
NSData *myData = [NSData dataWithContentsOfFile:path]; 
[picker addAttachmentData:myData mimeType:@"text/plain" fileName:@"myFile"]; 

dataFilePath एक विधि मैं एक फ़ाइल के लिए पथ प्राप्त करने के लिए का उपयोग है, यह ठीक काम करता है के रूप में मैं इसे अक्सर उपयोग: यहाँ कोड लगाव के प्रदर्शन के लिए मैं अब है। उपर्युक्त कोड < br /> < br /> रखता है, उसके बाद टेक्स्ट फ़ाइल से कुछ और < br /> < br /> .. में ब्रेक होता है ... इसलिए यह वास्तव में संलग्न नहीं होता है इसे ईमेल टेक्स्ट में चिपकाएं ... मैं फ़ाइल संलग्न करना चाहता हूं।

मैंने इस कोड को स्टैक ओवरफ्लो पर अन्य पोस्ट से कॉपी/संशोधित किया है और मुझे एप्पल की साइट पर जानकारी खोजने में कठिनाई हो रही है। नोट: मुझे यकीन नहीं है कि माइम टाइप एक txt फ़ाइल के लिए क्या है, क्योंकि उनकी वेबसाइट (www.iana.org) एक txt को इंगित नहीं करती है ... ???

अद्यतन: अद्यतन कोड में बदला गया, और यह पुष्टि करने के लिए धन्यवाद कि "सादा" माइम टाइप के लिए सही विकल्प था।

उत्तर

7

यह एक पूर्ण समाधान नहीं है, लेकिन सादे पाठ के लिए MIME प्रकार है:

text/plain
+0

आप कृपया अपना उत्तर समझा सकता है:

क्या इसके लायक है के लिए, यहाँ कुछ पूरा काम कर कोड, एक ई-मेल बनाता है कहते हैं एक HTML शरीर एक पाठ लगाव जोड़ता है, और भेजता है तो लिखें देखने से पता चलता है? – AsifHabib

3

यह आपके ईमेल क्लाइंट के साथ एक मुद्दा है, और अपने कार्यक्रम के साथ नहीं हो सकता है। क्या टेक्स्ट फ़ाइल मेल लिखें दृश्य में अनुलग्नक के रूप में दिखाई देती है, लेकिन तब जब आपको ईमेल प्राप्त होता है तो यह मुख्य निकाय में होता है?

जब आप ईमेल प्राप्त करते हैं, तो उस पर एक दृश्य स्रोत करने का प्रयास करें (या मूल देखें, या जो भी आपका ईमेल क्लाइंट इसे कॉल करता है)। आप ईमेल में कुछ इस तरह देखना चाहिए:

--Apple-Mail-1-494911569 
Content-Disposition: attachment; 
    filename=myFile 
Content-Type: text/plain; 
    name=myFile 
Content-Transfer-Encoding: 7bit 

Text of the file here. 

--Apple-Mail-1-494911569 

आप देखते हैं कि ईमेल में, फिर फ़ाइल को ठीक से संलग्न किया जा रहा है। यह संभव है कि आपका ईमेल क्लाइंट सामग्री-विस्थापन MIME शीर्षलेख को अनदेखा कर रहा हो। जीमेल और ऐप्पल मेल में, ऊपर दिए गए ईमेल अनुभागों को निश्चित रूप से संलग्नक के रूप में दिखाया जाता है।

NSData *textData = [[self getEmailAttachment] dataUsingEncoding:NSUTF8StringEncoding]; 
NSString *htmlData = [self getEmailBodyHTML]; 

/* Set up the mail compose view and put in the body/attachment */ 
MFMailComposeViewController *mailComposer = [[[MFMailComposeViewController alloc] init] autorelease]; 
[mailComposer setMessageBody:htmlData isHTML:NO]; 
[mailComposer addAttachmentData:textData mimeType:@"text/plain" fileName:@"tripometer_report.csv"]; 

/* Set default subject */ 
[mailComposer setSubject:@"Email subject"]; 

mailComposer.mailComposeDelegate = self;  
[self presentModalViewController:mailComposer animated:YES];