如何将字符串保存到文件指定位置?我使用path << 'string'保存,但它在文件结束时给出了它。在目标到xml(path)文件中有</databaseChangeLog>。我想在这个词出现之前保存到文件中。
有java解决方案click,但它是静态行。我的文件会是动态的,我不知道它会是什么样子。
def add_to_version() {
def path = new File('C:/groovy/version-1.xml')
def branchId = "Promt"
def lineCount = 0
def count = path.eachLine { line ->
if(line.contains('<include file="' + branchId + '/' + branchId + '.xml" ')){
wordCount++
}else if(lineCount == 1 ){
println "package is there"
}
}
if(lineCount == 0){
path << '<include file="' + branchId + '/' + branchId + '.xml" ' + 'relativeToChangelogFile="true"/>'
}
} 以上代码是这样做的:

and I want to get xml like that : 
发布于 2017-09-27 10:42:54
您可以像这样使用xml解析器:
def add_to_version(String branchId) {
def path = new File('C:/groovy/version-1.xml')
def xml = new XmlParser().parse(path)
xml.appendNode("include", [
file:"${branchId}/${branchId}.xml",
relativeToChangelogFile:"true"
])
groovy.xml.XmlUtil.serialize(xml, path.newOutputStream())
} 此变体将不保留xml格式和注释。
但是xml将是有效的。
https://stackoverflow.com/questions/46441622
复制相似问题