0

我有这种结构的xml文件:

<root>
    <elements>
        <element>
            <id>1</id>
            <tag1>some string</tag1>
        </element>
        <element>
            <id>1</id>
            <tag2>some other string</tag2>
        </element>
    </elements>
</root>

是否可以将这种 XML 解组为对象。问题是每个元素都有一些唯一的标签。我正在考虑将这些值放入列表中,但我不知道该怎么做。

4

1 回答 1

2

是的,有可能而且很简单,为元素标签创建一个 Element 对象并将所有可能的子标签放在那里,如果 JAX-B 在你的 XML 中找不到它们,它会将它们保留为空,所以你会得到一个像样的目的。

可以在这里找到一个简单的 JAX-B 介绍:http ://www.mkyong.com/java/jaxb-hello-world-example/

如果元素标签的可能子标签太多、变化迅速或未知,您可以尝试使用 <String, String> 结构,类似于此处描述的结构:如何将 HashTable<String, String> 序列化为使用 JAXB 的 XML?

但在大多数情况下,我会选择第一个选项。

于 2013-02-19T10:09:41.253 回答