这是一个带有空div标签(<div></div>
)的groovy代码段:
import groovy.xml.DOMBuilder
import groovy.xml.XmlUtil
def HTML_STRING = '''
<html>
<div></div>
<div>Some text</div>
</html>
'''
def xhtml = DOMBuilder.parse(new StringReader(HTML_STRING))
def root = xhtml.documentElement
XmlUtil.serialize(root, System.out)
这是输出:
<?xml version="1.0" encoding="UTF-8"?>
<html>
<div/>
<div>Some text</div>
</html>
Process finished with exit code 0
似乎XmlUtil.serialize
自我关闭无效标签 - 我不希望这样。有人知道如何禁用此功能吗?
谢谢。
乌罗什
答案 0 :(得分:3)
只要切换到XmlParser,就可以使用XmlNodePrinter
:
def xhtml = new XmlParser().parseText( HTML_STRING )
new XmlNodePrinter( expandEmptyElements:true ).print( xhtml )