不使用字符串/整数转换,将xml转换为json?

5
我可以帮您将XML转换为JSON。目前,我使用库org.json实现此功能:
JSONObject jso = XML.toJSONObject(xmlStr);

然而,如果XML包含数字字段,我希望在JSONObject中只有字符串字段。

例如:

XML文件为:

<ID>3</ID>
<NAME>ApplicationName</NAME>

org.json库使我具有以下功能:

{
    "ID" : 3,
    "Name" : "ApplicationName"
}

最终结果必须是:
{
    "ID" : "3",
    "Name" : "ApplicationName"
}

那是一个棘手的问题。您可能会更成功地将XML反序列化为Map<String,String>,以使所有内容都成为字符串,然后将其序列化为JSON。不能确定。 - jseashell
谢谢。但是,当XML文件比示例更复杂时,反序列化XML文件是否仍然可行? - J.Canonne
我不认为有什么问题。只要它是一个JSON对象而不是JSON数组,使用Map<String, String>就应该没问题了。 - jseashell
1个回答

7

我通过使用最新版本的org.json解决了我的问题。

有一种方法可以做到这一点:

JSONObject jso = XML.toJSONObject(xmlStr, true);

布尔值用于保留字符串字段。

这个版本接受布尔标志吗?你能在这里提一下吗?我们在最新版本中找不到。 - Azhagu Surya

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接