簡體   English   中英

Jackson不會將XML文件完全解析為JSON

[英]Jackson won't parse XML file to JSON entirely

我正在嘗試使用Jackson將xml字符串解析為JSON。

目前,我正在使用以下字符串:

String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +
                " <rootNode>\n" +
                "    <data>\n" +
                "        <cityCode>R8</cityCode>\n" +
                "        <place>\n" +
                "            <code>01</code>\n" +
                "        </place>\n" +
                "    </data>\n" +
                "    <data>\n" +
                "        <cityCode>R9</cityCode>\n" +
                "        <place>\n" +
                "            <code>02</code>\n" +
                "        </place>\n" +
                "    </data>\n" +
                "</rootNode>";

這是我正在使用的代碼:

XmlMapper xmlMapper = new XmlMapper();
JsonNode node = xmlMapper.readTree(xml);
ObjectMapper jsonMapper = new ObjectMapper();
String json = jsonMapper.writeValueAsString(node)

但是解析器似乎只得到一個節點:

{"data":{"cityCode":"R9","place":{"code":"02"}}}

如何將所有節點轉換為JSON?

謝謝

我使用readValue進入List使其工作

XmlMapper xmlMapper = new XmlMapper();
List list = xmlMapper.readValue(xml, List.class);
ObjectMapper jsonMapper = new ObjectMapper();
String json = jsonMapper.writeValueAsString(list);

不確定為什么您的版本不起作用, readTree和重復的屬性似乎存在問題。 參見本文第 5.1. Limitations5.1. Limitations 5.1. Limitations

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM