【发布时间】:2012-02-19 13:26:18
【问题描述】:
我正在通过以下方式将响应数据从 Web 请求转换为 NSString:
NSData *data = self.responseData;
if (!data) {
return nil;
}
NSStringEncoding encoding = CFStringConvertEncodingToNSStringEncoding(CFStringConvertIANACharSetNameToEncoding((__bridge CFStringRef)[self.response textEncodingName]));
NSString *responseString = [[NSString alloc] initWithData:data encoding:encoding];
然而生成的字符串看起来像这样:
"birthday":"04\/01\/1990",
"email":"some.address\u0040some.domain.com"
我想要的是
"birthday":"04/01/1990",
"email":"some.address@some.domain.com"
没有反斜杠转义和 unicode。最干净的方法是什么?
【问题讨论】:
-
看起来响应是用 json 格式编码的,然后简单地使用像 SBJson 这样的 json 解码器来获取正确的字符串
-
@phix23 没想到,解析JSON确实给出了正确的形式!写一个答案,我会接受的。
标签: objective-c ios nsstring nsdata