小编zui*_*uan的帖子

Groovy节点与节点列表

我很难在xml结构中添加更深的节点.我错过了node和nodeList之间的东西.任何帮助将不胜感激.

def xml='''<Root id="example" version="1" archived="false">
<Item name="one" value="test"/>
<Item name="two" value="test2"/>
<Item name="three" value="test3"/>
<AppSettings Name="foo" Id="foo1">
    <roles>foo</roles>
</AppSettings>
<AppSettings Name="bar" Id="bar1">
    <Item name="blue" value=""/>
    <Item name="green" value=""/>
    <Item name="yellow" value=""/>
    <Roles>
        <Role id="A"/>
        <Role id="B"/>
        <Role id="C"/>
    </Roles>
</AppSettings>
</Root>'''

root = new XmlParser().parseText(xml)
def appSettings = root.'AppSettings'.find{it.@Name == "bar"}.'Roles'
appSettings.appendNode('Role', [id: 'D'])


def writer = new StringWriter()
def printer = new XmlNodePrinter(new PrintWriter(writer))
printer.preserveWhitespace = true
printer.print(root)
String result = writer.toString()

println result
Run Code Online (Sandbox Code Playgroud)

错误

groovy.lang.MissingMethodException: No signature …
Run Code Online (Sandbox Code Playgroud)

groovy

5
推荐指数
1
解决办法
4639
查看次数

标签 统计

groovy ×1