url请求中的objective-c重音字符

时间:2011-07-13 15:02:13

标签: objective-c ipad character-encoding

我的应用程序将自身连接到服务器,要求数据执行php脚本并在表上显示这些数据。 当我选择一行时,数据显示为全文。 我可以在iPhone和iPad显示屏上正确读取所有内容,但我可以修改此文本,当我将其发送到另一个PHP脚本时,它会正确地读取字符。

请求以这种方式发送

NSMutableURLRequest *richiesta = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"http://www.sito.it/iosphp/trame.php"] cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0]; [richiesta setHTTPMethod:@"POST"]; [richiesta setHTTPBody:[[NSString stringWithFormat:@"trama=%@", self.trama.text] dataUsingEncoding:NSUTF8StringEncoding]];

在数据库内部(其整理是UTF8)我看到√ɬ®和其他奇怪的东西。

如何正确管理这些字符?

1 个答案:

答案 0 :(得分:1)

帖子的默认内容类型为application/x-www-form-urlencoded。这意味着您需要对要发送的值进行百分比编码。

[[NSString stringWithFormat:@"trama=%@", [self.trama.text stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; 
现在变为%C3%A0%C3%AC%C3%B9%C3%B2%C3%A8%C3%A9