【发布时间】:2010-05-14 05:03:33
【问题描述】:
我正在尝试支持来自各种国际用户的任意 unicode。他们已经将一堆数据放入他们 iPhone 上的 sqlite 数据库中,现在我想将数据捕获到数据库中,然后将其发送回他们的设备。现在我正在使用一个 php 页面,该页面将数据从 Internet mysql 数据库发送回。数据正确保存在mysql数据库中,但是当它被发送回来时,它会以unicode文本形式出现,例如
弗兰克\u00e2\u0080\u0099s iPad
而不仅仅是
弗兰克的 iPad
撇号应该是一个弯撇号。
The answer posted to another question 表示没有内置的 Cocoa 方法可以将 unicode 字符串的“\u00e2\u0080\u0099”部分从网络服务器转换为 NSString 对象。这是正确的吗?
这看起来真的很令人惊讶(也很令人失望),因为 Cocoa 绝对允许从许多不同的 Unicode 字符输入,而且我需要支持任何我从未听说过的任意语言以及所有可能的字符。我现在将它们保存到本地 sqlite 数据库和从本地 sqlite 数据库中保存得很好,但是一旦我将其发送到 Web 服务器,然后可能会拉取不同的数据,我想确保从 Web 服务器中提取的数据格式正确。
【问题讨论】:
-
想要跟进,我最终得到了一个解决方案,涉及更改我的 Web 服务器。我使用的 1and1 服务器将 sql 数据库中的数据作为转义的 Unicode 输出,而我从 HostGator 使用的另一台服务器以非转义的 ASCII 格式输出数据,正如我所希望的那样。我查找了许多潜在的解决方案,看来我确实必须更改服务器,因为 1and1 不允许我修改某些 MySQL 设置以使 Unicode 能够作为非转义字符发送。令人失望,但很高兴我想通了。
标签: objective-c cocoa unicode