在Groovy中,我想删除一个特定的子节点,但不是所有的子节点。
以下是一些示例XML:
<A>
<q>hello</q>
<w>world</w>
<e>again</e>
</A>
如何删除节点及其内容/属性(如果有)?
我已尝试在节点上使用.replaceBody方法,但子节点不被视为父节点主体的一部分。
答案 0 :(得分:0)
以下是使用XmlParser生成groovy.util.Node
并且有一个方法删除。 http://docs.groovy-lang.org/latest/html/api/groovy/util/Node.html
def x = new XmlParser().parseText('''
<A>
<q>hello</q>
<w>world</w>
<e>again</e>
</A>
''')
x.remove( x.w[0] )
println groovy.xml.XmlUtil.serialize(x)