无法在MFMailComposer中附加MSWord文档

时间:2013-01-05 05:40:08

标签: iphone objective-c ios ios5 mfmailcomposeviewcontroller

MFMailComposer我正在附加MSWord文档。这些文件附在MFMailComposer上。我将这些文件发送到另一个邮件地址。在目标邮件中,这些附件显示为下载选项,而不是视图选项。

我正在使用此代码

NSURL *url = [[NSURL alloc] initWithString:self.fileString];
NSData *attachments = [NSData dataWithContentsOfURL:url];
[mailView addAttachmentData:attachments mimeType:@"application/pdf/text/msword/csv" fileName:self.useridString];

1 个答案:

答案 0 :(得分:0)

您必须为MSWORD文档设置mime类型..

"application/msword" MIME类型是单词2003“.doc”文件的类型。 word 2007“.docx”文件的正确MIME类型是:

application/vnd.openxmlformats-officedocument.wordprocessingml.document

对于更多msword mimetypes,请使用以下链接link1link2

    MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
    picker.mailComposeDelegate = self;
    [picker setSubject:@"Your Subject"];
    [picker addAttachmentData:yourData mimeType:@"application/csv" fileName:@"fileName"];
    [picker addAttachmentData:yourData mimeType:@"application/vnd.openxmlformats-officedocument.wordprocessingml.document" fileName:@"fileName"];
    }

<强>编辑:   检查网址包含哪种甲酸盐。我的意思是这个url包含.pdf并获得该pdf。等等...

 NSArray *arrayComp = [self.fileString componentsSeparatedByString:@"/"];
    NSString *fileType = [[[arrayComp lastObject] componentsSeparatedByString:@"."] lastObject];
    NSString *mimeType = [NSString stringWithFormat:@"application/%@",fileType];

    NSURL *url = [[NSURL alloc] initWithString:self.fileString];
    NSData *attachments = [NSData dataWithContentsOfURL:url];
    [picker addAttachmentData:attachments mimeType:mimeType fileName:@"fileName"];

我认为这会对你有所帮助。