iOS使用ASIHTTPRequest请求过来的数据中包含utf-8字符

JoeyBlue 发布于 2013/02/19 10:09
阅读 3K+
收藏 0


在使用ASIHTTPRequest请求一个接口时,使用NLog打印出返回的Json串,发现有很少一部分汉字显示的是其UTF-8编码的样式,比如“考试”会显示为“\350\257\225”,其中\350\257\225是“试”utf-8编码,而且没有规律,有些时候这个字显示不正常,有时候显示正常,Android上没有这种问题,在服务端打印出生成的JSON也是正常的,所以接口返回值应该没有问题。服务器返回头的编码是UTF-8,ASIHTTPRequest也设置了UTF8编码:

request.defaultResponseEncoding = NSUTF8StringEncoding;
现在怀疑是 ASIHTTPRequest的问题,不知大家谁遇见过这样的问题,谢谢!


加载中
0
dreamlife_zhou
dreamlife_zhou
没有错误啊,打印的是那样 但真正显示出来就正常了
0
kiwivip
kiwivip
大不了再自己转一次呗~
JoeyBlue
JoeyBlue
怎么转啊?求帮助
0
dake
dake
正常的..
dake
dake
回复 @乔学士 : 你用的啥Json解析库
JoeyBlue
JoeyBlue
正常?那应该怎么处理?在解析JSON的时候会因为语法不正确,解析错误,愁着呢,兄弟给个招
0
c
coolmomo

//转换代码

    SBJsonWriter *jsonWriter = [[SBJsonWriter alloc] init];

    NSString *jsonString = [jsonWriter stringWithObject:dict];

    [jsonWriter release];

0
长大后的流岚
长大后的流岚

哪位大神能帮我解决个问题 AISHttpRequest流传递。服务端是J2EE.后台报错。主要是因为:

DataInputStream in = new DataInputStream(request.getInputStream());

String sb = in.readUTF();

无法解析。求大神指教下!


0
JoeyBlue
JoeyBlue

引用来自“dreamlife_zhou”的答案

没有错误啊,打印的是那样 但真正显示出来就正常了

@dreamlife_zhou 兄说正解,谢谢! 这个不是最终导致错误的原因,是接口有时会返回一段非Json的response,导致解析失败.

返回顶部
顶部