如何将Unicode字符串(\ u00e2等)转换为NSString进行显示?

kar*_*com 3 unicode cocoa objective-c

我试图支持来自各种国际用户的任意unicode.他们已经将大量数据放入他们的iPhone上的sqlite数据库,现在我想将数据捕获到数据库中,然后将其发送回他们的设备.现在我正在使用一个从互联网mysql数据库发回数据的php页面.数据正确地保存在mysql数据库中,但是当它被发送回来时,它会以unicode文本形式出现,例如

弗兰克\\\\\\\\\\\\\\\\\\\\\

而不仅仅是

弗兰克的iPad

撇号应该是一个卷曲的撇号.

发布到另一个问题的答案表明,没有内置的Cocoa方法将unicode字符串的"\ u00e2\u0080\u0099"部分从Web服务器转换为NSString对象.它是否正确?

这看起来真的很令人惊讶(并且非常令人失望),因为Cocoa肯定允许来自许多不同Unicode字符的输入,我需要支持我从未听说过的任何语言,以及所有可能的字符.我现在将它们保存到本地sqlite数据库中,但是一旦我将它发送到Web服务器,然后可能会下载不同的数据,我想确保从Web服务器提取的数据格式正确.

Nik*_*uhe 5

[...]没有内置的Cocoa方法来转换[...].它是否正确?

这不对.

您可能感兴趣CFStringTransform并且它的功能.它是一个完整的ICU转换引擎,可以(也)执行您请求的转换.

请参阅使用Objective C/Cocoa来取消unicode字符,即\ u1234