0

我正在使用字符串中的空格编码

[@"iPhone Content.doc" stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]

在 SKPSMTP 消息发送中。但是,在附件位置接收邮件时,我得到了名称iPhone%20Content.doc- 而不是它显示的空格%20。如何避免/正确编码?

4

3 回答 3

0

远程接收者当然不能接受带有空格的url,所以我们必须使用stringByAddingPercentEscapesUsingEncoding函数转换URL地址。

此函数将 URL 表达式中的空格替换为 %20。当 URL 包含非 ascii 字符时,它特别有用 - 您已使用该功能对 URL 进行百分比转义,以便远程服务器可以接受您的请求。

于 2014-04-24T02:07:22.280 回答
0

我的问题得到了解决方案。实际上我错过了将“”设置为字符串。

于 2012-08-15T16:54:51.320 回答
0

如果您这样做,stringByAddingPercentEscapesUsingEncoding那么您将在结果字符串中获得百分号......您可以使用不同的东西,或者稍后返回并删除百分号。

从文档:

stringByAddingPercentEscapesUsingEncoding:使用给定的编码返回接收者的表示,以确定将接收者转换为合法 URL 字符串所需的百分比转义。

又名,“此方法添加百分号”。如果要反转此过程,请使用stringByReplacingPercentEscapesUsingEncoding

只是一个旁注,%20是因为空格字符的十六进制表示是 20 并且 % 符号是转义符。您只需对 URL 执行此操作,因为它们不允许使用空格字符。

于 2012-08-15T12:12:42.697 回答