iPhone邮件和特殊字符

时间:2011-12-01 18:32:00

标签: objective-c

在我的iPhone应用程序中,我将电子邮件内容传递给独立的iPhone邮件应用程序,但内容在包含特殊字符时会被截断。即使我使用stringByAddingPercentEscapesUsingEncoding:预处理内容也是如此。

2 个答案:

答案 0 :(得分:0)

Percent escaping个字符仅用于网址。它不属于MIME spec

我不明白为什么它不起作用。你确定这些是正确的UTF-8字符吗?!只要您传递一个字符串,Mail就应该将所有内容打包在电子邮件中。

答案 1 :(得分:0)

stringByAddingPercentEscapesUsingEncoding:不会转义在网址中有效的字符,例如&。在这种情况下,您需要转义它们,否则它们将被解释为URL结构的一部分(表示新参数),而不是参数本身的一部分。请改用CFURLCreateStringByAddingPercentEscapes

NSString *escaped = [(NSString *)CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,
                                            (CFStringRef)someURLParameter,
                                            NULL,
                                            (CFStringRef)@"!*'();:@&=+$,/?%#[]",
                                            kCFStringEncodingUTF8) autorelease];
相关问题