我正在尝试gradle.build
:
XmlSlurper
更新读取XML文件中的属性第三步只有在我将修改后的XML写入新的不存在的 XML文件,但不 最初解析的XML文件。
将修改后的XML写入最初解析的XML文件的最简单方法是什么?
到目前为止我的代码:
def inFile = file('file.xml')
def outFile = file('_file.xml')
def xml = new XmlSlurper().parse(inFile)
// update xml code here
def outBuilder = new StreamingMarkupBuilder()
def outWriter = outFile.newWriter()
XmlUtil.serialize(outBuilder.bind{ mkp.yield xml }, outWriter)
我希望outFile
为file.xml
,以便覆盖原始XML文件。
答案 0 :(得分:10)
如果您这样做会发生什么:
def inFile = file( 'file.xml' )
def xml = new XmlSlurper().parse( inFile )
xml.appendNode {
haha( 'tim_yates' )
}
inFile.withWriter { outWriter ->
XmlUtil.serialize( new StreamingMarkupBuilder().bind{ mkp.yield xml }, outWriter )
}
是不是没有写? (似乎对我有用)