【问题标题】:Double decoding Objective C/iPhone双解码Objective C/iPhone
【发布时间】:2011-05-05 09:43:28
【问题描述】:

有人知道我如何正确解码双编码的 UTF8 字符串吗?我使用 NSXMLParser 对其进行一次解码,但之后我遇到了一个显示 UTF8 编码字符的字符串。

提前致谢。

【问题讨论】:

    标签: iphone encoding


    【解决方案1】:

    使用[NSSting stringWithUTF8String:charPtr];再次解码

    【讨论】:

    • 感谢您的回答。但是我怎样才能让 charPtr 正确,因为当我使用 [@"textwithutf8" cStringUsingEncoding:[NSString defaultCStringEncoding]]; 时,当字符串中有像 ï 这样的字符时,我会返回 NULL。
    • 你为什么要使用默认编码,因为你的字符串是 utf8 编码的,所以你应该使用chPtr = [str cStringUsingEncoding:NSUTF8StringEncoding];
    【解决方案2】:

    “解码双重编码的 UTF-8 字符串”究竟是什么意思?通过字符串“显示 UTF-8 编码字符”,您的意思是 character entity references,例如&#x6C34等等?

    如果是这样,有一个category 可以帮助您。具体看-[NSString stringByDecodingHTMLEntities]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多