这是我的Groovy代码:
// ...
def xml = new XmlParser().parse(fileName)
xml.each { e ->
// some changes are being made to XML
xml.append("test", "test me")
}
def writer = new FileWriter(newFileName)
new XmlNodePrinter(new PrintWriter(writer)).print(xml)
代码可以运行,但输出的XML中有很多不必要的空格。看起来我在写入文件时做错了什么。
附:感谢Tim,这是正确的操作(上面示例的最后一行应替换为以下三行):
def printer = new XmlNodePrinter(new PrintWriter(writer))
printer.preserveWhitespace = true
printer.print(xml)
preserveWhitespace = false
吗? - pmartin