您的位置:首页 > 编程语言 > PHP开发

IOS请求php返回的数据JSON数据无法正确解析 utf-8格式

2012-05-22 00:21 946 查看
本来可以早早睡觉了,突然发现PHP请求回来的JSON格式居然无法解析出正确的数据。

解析代码

request.responseEncoding = NSUTF8StringEncoding;
NSString *responseString = [request responseString];


用浏览器打开发现是正确的JSON格式,那就怀疑是我们客户端代码的问题。
使用一下代码解析
    request.responseEncoding = NSUTF8StringEncoding;
NSString *responseString = [request responseString];

if (responseString == nil)
{
NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_2312_80);

request.responseEncoding = enc;
responseString = [request responseString];
}

if (responseString == nil)
{
request.responseEncoding = NSISOLatin1StringEncoding;
responseString = [request responseString];
}


可以解析出来,但是发现解析的中文是乱码。
那就开始怀疑是apache的问题,但是我使用的是XAMPP最新的版本,查了很久发现现在的版本是不需要设置字符集的。
在想了几种可能性后,突然想到会不会是文本的保存格式的问题,我将XXX.PHP用UTF-8保存后,正确可以解析出数据。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: