两个设备的编码是不同的



当我在Galaxy SII或Nexus S上启动应用程序时我在Nexus S上没有问题,但在Galaxy SII上,我遇到了编码问题!(我得到了我的应用程序的所有文本从远程json文件)

JSON总是以某种Unicode形式编码。有两种可能:

  1. JSON文件不是Unicode,如果是,它是无效的:通知所有者
  2. 你的应用程序解码错误。

JSON RFC确切地告诉您如何确定使用了哪个特定的Unicode编码。检查字符串的前四个八位元组,并从下表中找出编码。

       00 00 00 xx  UTF-32BE
       00 xx 00 xx  UTF-16BE
       xx 00 00 00  UTF-32LE
       xx 00 xx 00  UTF-16LE
       xx xx xx xx  UTF-8

这是有效的,因为JSON字符串的前两个字符总是来自ASCII字符集(非ASCII字符只允许在字符串中)。

最新更新