gpt4 book ai didi

xml - Groovy 使用 XMLHolder 迭代节点

转载 作者:数据小太阳 更新时间:2023-10-29 01:55:38 25 4
gpt4 key购买 nike

我想使用 XML-Holder 遍历 XML 文件的节点。

def reader = groovyUtils.getXmlHolder(test1 );

假设 XML 如下所示:

<xml>
<node>
<val1/>
<val2/>
</node1>
<node>
<val1/>
<val2/>
</node2>
</xml>

我想从不同的节点读取值。 (val1,val2)。所以我这样尝试:

for( node in reader.getNodeValues( "//ns1:node" ))
{}

它确实遍历了节点,但我不知道如何访问其中的值。

非常感谢您的帮助!

约翰

最佳答案

您可能想要调用 getDomNodes 而不是 getNodeValues。这将返回类 org.w3c.dom.Node 的标准 Java DOM 节点。 .从那里您可以遍历以 getFirstChild 开始并以 getNextSibling 迭代的子节点。 Groovy 的 DOMCategory添加了一些方便的辅助方法,大大减轻了痛苦。

例如:

use (groovy.xml.dom.DOMCategory) {
for( node in reader.getDomNodes( "//ns1:node" )) {
node.children().each { child ->
println child
}
}
}

关于xml - Groovy 使用 XMLHolder 迭代节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7597468/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com