将Unicode转义序列转换成对应的字符

Convert Unicode escape sequence into its corresponding character

我从服务器接收到一个字符串,它在代码中包含特殊字符。这是示例:

"El usuario o las contrase\UOOOOfffda no son v\UOOOOfffdlidos"

第一个应该是“ñ”,第二个应该是“á”

我知道这并不复杂,但我找不到答案。如何获取格式正确的特殊字符字符串?

这些字符的 Unicode 应如下所示:

@"accented-a is \u00f1, and tilda-n is \u00e1"

但不清楚您从服务器获取的内容是否有意义。 objective-c 文字必须以小写字母开头 "u",后跟有效的十六进制数字(0-9 和 a-f)。我没有看到将您所拥有的文字更改为您期望的文字的转换。

一旦字符被正确格式化,内置的 类 就会起作用,例如,将字符串分配给标签的 text 属性 将向用户展示一个很好的字形。

Unicode U+FFFD(在您的字符串中,显示为 UTF-32 \U0000fffd)是替换字符“�”。当系统遇到无法识别的字符时,它通常会替换为字符串。

这个字符真的不应该出现在字符串数据中,因为它的目的是指示显示或解释字符串时的错误。由于您的服务器向您发送了 ñ 和 á 的字符,因此无法检索到正确的字符。

你 "receiving" 这个字符串怎么样?可能是您访问服务器的方式不正确,因此它没有向您发送未修改的字符串。