我已经搜索到了很多,并且很惊讶没有像这样出现。 我试图发送一个音频文件电子邮件附件(使用MFMailComposeViewController)在文件名中有中文/汉字字符。奇怪的是,当我在文件名中使用特定的字符时,当我收到电子邮件时,它变成了一大串怪异的字符。MFMailComposeViewController带有外部字符的文件附件名称
有了“平成23年.m4a”这样的文件名,收到电子邮件时的附件名变成“平成23 ”/%1B%28B8%1B%24B7n%1B%28B25%1B %24 ...“这是造成这种情况的字符”年“,如果我删除了这个字符,一切都很好,可能会有另外一个中文/汉字字符可能导致同样的问题,但我不知道如何甚至开始解决这个问题...我一直在拉我的头发,所以希望有人可以帮我这个...
也有一个类似的问题是,与某些电子邮件提供商(工作正常的Gmail,雅虎,但不适用于gmboy.com之类的东西),如果我在文件名中包含日文字符,则它们将无法显示并被下划线符号替换(例如,Testテスト.m4a变成Test_.m4a)我觉得这可能与上面的问题有关。
这里是我的代码...
/* Set up the mail compose view and put in the body/attachment */
MFMailComposeViewController *mailComposer = [[[MFMailComposeViewController alloc] init] autorelease];
NSMutableDictionary *dict = [[self itemsToSend] objectAtIndex:0];
NSString *path = [dict objectForKey:@"exportFileAddress"];
NSData *myData = [NSData dataWithContentsOfFile:path];
NSString *fileName = @"平成23年.m4a";
[mailComposer addAttachmentData:myData mimeType:@"audio/m4a" fileName:fileName];
[mailComposer setMessageBody:@"Test email" isHTML:YES];
/* Set default subject */
[mailComposer setSubject:@"Email subject"];
mailComposer.mailComposeDelegate = self;
[self presentModalViewController:mailComposer animated:YES];
文件附件名称将显示就好了,当MFMailComposeViewController观点出现,但不知何故,在发送过程中,得到了名搞砸了。
任何帮助将非常感谢!
看起来像我的一个iOS bug。 – Akshay
哦,我没有注意到你的评论Akshay。感谢您的意见。就像我在下面说的,我刚刚尝试使用默认的iOS应用程序,并发生同样的问题。所以是的,这不仅仅是我错误地使用了API ... – kaka123