我有以下.XML文件:
<testItems>
<children>
<testItem name=TestSuite1>
<children>
<testItem name=test1>
</testItem>
<testItem name=test2>
</testItem>
<testItem name=test3>
</testItem>
</children>
</testItem>
<testItem name=TestSuite2>
<children>
<testItem name=test3>
</testItem>
<testItem name=test4>
</testItem>
<testItem name=test5>
</testItem>
</children>
</testItem>
</children>
我想实现访问每个节点的java / groovy递归算法,无论深度如何(在示例中最大深度为2,但它可以变化)
到目前为止,我有:
root.testItems.children.testItem.each{testItem ->
...rest of code...
}
将访问TestSuite1和TestSuite2,但我希望它以递归方式访问所有节点。
非常感谢任何帮助!
答案 0 :(得分:1)
def root = new XmlParser().parseText(...)
root.depthFirst().each{e->
//do something with each element
}