如何在XML中找到元素的自然顺序?

时间:2014-09-07 18:25:53

标签: java xml dom

我必须找到xml中元素的自然顺序。我不知道从哪里开始?

这是要求:

   <test>
    <test1>
        <figure id ="1"/> 
    </test1>
    <test1>
        <figure id ="2"/> 
        <test1>
            <figure id ="3"/> 
        </test1>
        <test1>
            <figure id ="4"/> 
        </test1>
    </test1>

    <test1>
        <figure id ="5"/> 
    </test1>

    <test1>
        <figure id ="6"/> 

        <test1>
            <figure id ="7"/> 
        </test1>

        <test1>
            <figure id ="8"/> 
            <test1>
                <figure id ="9"/> 

                <test1>
                    <figure id ="10"/> 
                    <test1>
                        <figure id ="11"/> 


                    </test1>

                </test1>
            </test1>

        </test1>

    </test1>
</test>

我必须找到所有数字元素的正确顺序 在上面的示例代码图中有11个数字元素。我必须得到每个数字元素的顺序,

假设我现在处于元素<figure id ="10"/>

然后我必须在此之前统计所有的数字元素(共9个)

我正在使用dom处理java中的xml。 并在运行时

1 个答案:

答案 0 :(得分:2)

如果您获得了根元素并致电root.getElementsByTagName("figure"),它应该返回一个NodeList,其元素按照它们在文档中的显示顺序。如果方便,您可以遍历NodeList并构建从id值到<figure>元素的映射,或者构建一个<figure>元素数组,或构建任何其他方便的数据结构,具体取决于您的加工要求。