【问题标题】:objective encode in utf8 instead of unicode目标编码为 utf8 而不是 unicode
【发布时间】:2018-03-01 15:56:11
【问题描述】:

我在使用客观 C 和希伯来语字符时遇到问题。 我正在尝试从NSURL 获取信息到NSMutableDictionary

我正在使用objectForKey:[url absoluteString] 问题是例如字符串

A%20%d7%91%d7%93%d7%99%d7%a7%d7%94%20%d7%a2%d7%9d%20%d7%90%d7%95%d7%aa%20%d7%95%d7%a8%d7%95%d7%95%d7%97

解码为

A ××××§× ×¢× ××ת ×ר×××

而不是

A בדיקה עם אות ורווח

如何获取带有“x”的第一个文本并将其转换为带有希伯来语的第二个文本?

我使用了这个网站,发现它是可能的 first Site

谢谢!

【问题讨论】:

  • 在您的问题中以文本形式显示您的相关代码。
  • 没有“utf-8 而不是 unicode”这样的东西。 utf-8 一种unicode编码,而unicode本身并不是一种编码,而是一种将符号表示为数字的系统。

标签: objective-c unicode utf-8 character-encoding urlencode


【解决方案1】:

非常不清楚为什么您认为它会解码为带有“×”的字符串(与“x”不同)。这可以毫无问题地解码成希伯来语:

let text = "A%20%d7%91%d7%93%d7%99%d7%a7%d7%94%20%d7%a2%d7%9d%20%d7%90%d7%95%d7%aa%20%d7%95%d7%a8%d7%95%d7%95%d7%97"

(text as NSString).removingPercentEncoding

等效的 ObjC 应该接近这个:

NSString *text = @"A%20%d7%91%d7%93%d7%99%d7%a7%d7%94%20%d7%a2%d7%9d%20%d7%90%d7%95%d7%aa%20%d7%95%d7%a8%d7%95%d7%95%d7%97"
NSString *decoded = [text removingPercentEncoding];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-28
    • 2014-10-18
    • 1970-01-01
    • 2010-11-08
    • 2020-08-22
    • 2017-01-05
    相关资源
    最近更新 更多