2011-04-20 57 views
0

我想用ny字符串创建一个csv文件并附加它。我是通过使用这些线邮件附件创建问题

[foodString writeToFile:@"Meal.csv" atomically:YES encoding:NSUTF8StringEncoding error:NULL]; 
       [mailView addAttachmentData:NULL mimeType:@"text/csv" fileName:@"Meal.csv"]; 
       [mailView setMessageBody:@"Open attached file." isHTML:NO]; 

试试这个,MFMail显示我在邮件文件的图标,但我不能得到任何文件。

请帮我out.Thanx ...

回答

2

线索......

addAttachmentData:NULL 

你需要真正重视的数据。文件名就是您选择给文件的名称,它没有其他用途,并不意味着将该文件附加到该名称。

MFMailComposeViewController documentation说得很清楚。

因此你需要做这样的事情;

NSData *myData = [NSData dataWithContentsOfFile:your-full-file-path]; 

要生成的数据。请注意,您需要提供完整的文件路径,而不仅仅是名称(作为读者的练习留下)。

+0

感谢名单罗杰,它的工作原理CHEARS。 – Ishu 2011-04-20 12:31:20

0

附件数据不能为空,以便

试试这个

[foodString writeToFile:@"Meal.csv" atomically:YES encoding:NSUTF8StringEncoding error:NULL]; 
[mailView addAttachmentData:[NSData dataWithContentsOfFile:path_to_Meal.csv] mimeType:@"text/csv" fileName:@"Meal.csv"]; 
[mailView setMessageBody:@"Open attached file." isHTML:NO]; 
0

试试这个

NSString *filePath = @"write your file path here"; 

    [foodString writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:NULL]; 
if([[NSFileManager defaultManager]fileExistsAtPath:filePath]){ 
    [mailView addAttachmentData:[NSData dataWithContentsOfFile:filePath] mimeType:@"text/csv" fileName:@"Meal.csv"]; 
    [mailView setMessageBody:@"Open attached file." isHTML:NO]; 

} 
else{ 
NSLog(@"File not created!"); 
}