从NSData转换的NSString中删除unicode和反斜杠转义 [英] Removing unicode and backslash escapes from NSString converted from NSData
本文介绍了从NSData转换的NSString中删除unicode和反斜杠转义的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在通过以下方式将响应数据从Web请求转换为NSString:
I am converting the response data from a web request to an NSString in the following manner:
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];
但结果字符串如下所示:
However the resulting string looks like this:
"birthday":"04\/01\/1990",
"email":"some.address\u0040some.domain.com"
我想要的是
"birthday":"04/01/1990",
"email":"some.address@some.domain.com"
没有反斜杠转义和unicode。最干净的方法是什么?
without the backslash escapes and unicode. What is the cleanest way to do this?
推荐答案
响应似乎是JSON编码的。因此,只需使用JSON库(SBJson,JsonKit等)解码响应字符串即可获得正确的表单。
The response seems to be JSON-encoded. So simply decode the response string using a JSON library (SBJson, JsonKit etc.) to get the correct form.
这篇关于从NSData转换的NSString中删除unicode和反斜杠转义的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文