在groovy中创建xml时如何添加属性和节点值

时间:2015-08-10 08:26:11

标签: xml groovy

我正在使用groovy创建一个动态XML文档,其中每个节点都可以包含值,属性或两者。

例如

<root>
  <a id="123"> someValue </a>
<root>

我似乎无法找到一个使用值和一组属性创建节点的示例。

以下是创建节点的代码行(在创建XML文档和根元素的其他代码中)

// node is a map, as is node.attributes
"${node.node_name}"(node.attributes.each { k, v -> "${k}:${v}"})

创建以下内容:

<a id=123 />

,而:

"${node.node_name}""${node.value}"

创建:

<a>someValue <a>

什么代码会创建一个包含属性和值集的节点,如下所示:

<a id=123> someValue </a>

感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

以下是您正在寻找的代码:

import groovy.xml.MarkupBuilder

def writer = new StringWriter()
def xml = new MarkupBuilder(writer) 

xml.root() {
    a(id: 123, 'someValue')
}
println writer.toString()