Gradle使用groovy XML解析器解析XML文件,例如,
<foo id="3">
<!-- this is bar -->
<bar id="5"
attr1="10">
attr2="20">
<hello>world</hello>
</bar>
<foo>解析xml并将其写出来:
def root = new XmlParser().parse(new FileInputStream("/foo.xml"))
// add some nodes
groovy.xml.XmlUtil.serialize(root, new FileOutputStream("/bar.xml"))所有的注释和换行符都消失了。如何使用groovy XML解析器保存注释和所有其他格式?
我看过这个:Groovy edit XML file, keep comments, line breaks
如何导入groovy.xml.*?groovy在gradle中无法识别。
发布于 2017-07-11 23:49:05
你应该使用jdom2,它会解决你的问题
首先,在build.gradle文件中设置依赖项
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'org.jdom:jdom2:2.0.6'
}
}然后使用这个修改过的代码片段:
def root = new org.jdom2.input.SAXBuilder().build(new FileInputStream("/tmp/foo.xml"))
// add some nodes
new org.jdom2.output.XMLOutputter().with {
format = org.jdom2.output.Format.getRawFormat()
format.setLineSeparator(org.jdom2.output.LineSeparator.NONE)
output(root, new FileOutputStream("/tmp/bar.xml"))
}https://stackoverflow.com/questions/45037594
复制相似问题