我有一个字符串“Artîsté”。我使用PHP上的json_encode,然后得到“Art \ u00eest \ u00e9”。
如何将其转换为NSString?我尝试了很多东西而且没有一个能够工作我总是得到Artîsté
For Example:
NSString stringWithUTF8String:"Art\u00c3\u00aest\u00c3\u00a9"];//Artîsté
@"Art\u00c3\u00aest\u00c3\u00a9"; //Artîsté
答案 0 :(得分:7)
您可以使用CFStringCreateFromExternalRepresentation
kCFStringEncodingNonLossyASCII
编码来解析\uXXXX
转义序列。看看我的答案:
Converting escaped UTF8 characters back to their original form
答案 1 :(得分:4)
问题是输入字符串:
"Art\u00c3\u00aest\u00c3\u00a9"
实际上字面意思是“Artîsté”。 \ u00c3是'Ã',\ u00ae是'®',而\ u00a9是'©'。
无论是什么产生你的输入字符串都是接收UTF-8输入但是期待别的东西(例如,cp1252,ISO-8859-1或ISO-8859-15)