unicode在objective-c中逃脱

时间:2011-10-25 18:15:08

标签: objective-c unicode

我有一个字符串“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é

2 个答案:

答案 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)