Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml Groovy节点-添加新子节点仅添加结束标记_Xml_Groovy_Children_Xmlslurper - Fatal编程技术网

Xml Groovy节点-添加新子节点仅添加结束标记

Xml Groovy节点-添加新子节点仅添加结束标记,xml,groovy,children,xmlslurper,Xml,Groovy,Children,Xmlslurper,我在使用Groovy向XML文档添加新的子节点时遇到了一个问题。我不希望在新节点中有任何子节点,此时它只是一个占位符。基本上,代码看起来像 trans = new Node(parent, translationsName, new HashMap(), new HashMap(), "") parent.children.add(trans) 但是,当我检查XML时,添加的所有内容都是 <NODE/> 当我想要的是 <NODE> </NODE>

我在使用Groovy向XML文档添加新的子节点时遇到了一个问题。我不希望在新节点中有任何子节点,此时它只是一个占位符。基本上,代码看起来像

trans = new Node(parent, translationsName, new HashMap(), new HashMap(), "")
parent.children.add(trans)
但是,当我检查XML时,添加的所有内容都是

<NODE/>

当我想要的是

<NODE>
</NODE>


我一直在搜索互联网和阅读文档,但没有结果。有没有人有这方面的经验?我似乎不知道我做错了什么。谢谢

您正在查看空节点的自动关闭语法。请注意结尾的斜杠,而不是像结束标记那样在开头。只有两种方法可以渲染同一个空节点


根据渲染的方式,有时可以要求任何一种形式,例如Groovy的XmlNodePrinter具有“expandEmptyElements”属性。性能良好的XML工具应该支持这两种变体。

如果您确实需要在其中添加换行符,那么您必须添加一个文本节点(带换行符)。

添加一个带换行符的文本节点?这很有效。添加作为答案,我将接受