我正在尝试使用groovy更新超过72,000行的非常大的xml文档。我可以正确解析文件并编辑它,但是当我尝试在浏览器中打开它时输出已损坏(输入文件可以在浏览器中查看)。
此页面包含以下错误:
第4行第1401行的错误:编码错误下面是渲染 页面直到第一个错误。
这是第1401行:
<ENTRY MODIFIED_DATE="2013/9/9" MODIFIED_TIME="59764" AUDIO_ID="a very long string"
TITLE="Sea Lo Que Sea Será (Original Mix)" ARTIST="Above And Beyond Feat. Miguel Bosé">
当我去那条线时,一切都显得正常,所以我猜这个问题就在文件的其他地方。
这就是我编写输出xml文件的方式:
new File("C:/workspacGROOVY/org.something.groovy/collection_out.xml").withWriter { out ->
out << new StreamingMarkupBuilder().bind { mkp.xmlDeclaration() }
new XmlNodePrinter(new PrintWriter(out)).print(xml)
}
免责声明:这是我在groovy中写的第一件事。
感谢您的帮助。
答案 0 :(得分:1)
尝试将UTF-8指定为编码:
new File("C:/workspacGROOVY/org.something.groovy/collection_out.xml").withWriter('UTF-8') { out ->
out << new StreamingMarkupBuilder().bind { mkp.xmlDeclaration() }
new XmlNodePrinter(new PrintWriter(out)).print(xml)
}
请参阅this post以获取更小的示例。