1

我的 XML 文件是:

<XYZ>
    <A name="one">
        <label>I am A one</label>
    </A>
    <B name="two">
        <label>I am B two</label>
    </B>
    <A name="three">
        <label>I am A three</label>
    </A>
</XYZ>

我的代码是:

String myXmlAsString = //Read the above xml as String
Document document = new SAXReader().read(new StringReader(myXmlAsString ));
List<Element> dataElements = document.selectNodes("/XYZ");

我的问题是:

如果我通过上述代码读取我的 XML 文件,那么方法dataElements返回的列表selectNodes(String xPathExpr)是否与原始 XML 文件中的顺序相同?

如果是,那么即使 XML 具有深度嵌套并且我在此文档对象selectNodes(String xPathExpr)中的任何对象上调用该方法,这是否也适用。Element

4

2 回答 2

1

列表是有序结构。SAXReader 没有理由删除该订单。

于 2013-07-11T20:44:15.450 回答
1

XPath 在返回结果时不会更改元素的顺序,因此元素的顺序与您输入的 xml 中的顺序完全相同。

于 2013-07-11T20:46:09.183 回答