【发布时间】:2010-10-17 13:41:00
【问题描述】:
在我的应用程序中,我正在使用此方法从 xml 转换为 Json 对象;
JSONObject result = org.json.XML.toJSONObject(postData);
但是,我对土耳其字符有疑问。它不会将土耳其语字符从 xml 转换为 json。我该怎么做?
谢谢。
【问题讨论】:
在我的应用程序中,我正在使用此方法从 xml 转换为 Json 对象;
JSONObject result = org.json.XML.toJSONObject(postData);
但是,我对土耳其字符有疑问。它不会将土耳其语字符从 xml 转换为 json。我该怎么做?
谢谢。
【问题讨论】:
我看了一眼org.json.XML.toJSONObject(String),它似乎没有进行任何字符转码。
我怀疑问题出在您的应用程序如何读取传递给toJSONObject 的字符串。我怀疑它使用了错误的字符集。
其实有两种可能:
XML 没有“编码”属性,您的应用程序只是选择了错误的属性。
XML 确实有一个“编码”属性,但您的应用程序无法遵守它。
第二种可能性是有问题的。在理想情况下,通过读取为 ASCII 字节来解析 XML 文档,直到 <? xml ?> declaration is read. Then character interpretation switches to the document's specified encoding. But the XML parser use byorg.json` 中的“编码”属性无法执行此操作,并且其 API 无论如何都不允许这样做。因此,如果您的 XML 具有“编码”属性,则必须(通过某种方式)在将文档转换为 Java 字符串之前对其进行检测。
【讨论】: