使用Groovy的XmlParser解析属性和值
我有XML文件的以下部分:使用Groovy的XmlParser解析属性和值,groovy,Groovy,我有XML文件的以下部分: <properties> <project.version>module.version</project.version> <ie.version>17-8-103</ie.version> <leg_uk.version>17-6-6</leg_uk.version> <leg_na.version>17-8-103</leg_n
<properties>
<project.version>module.version</project.version>
<ie.version>17-8-103</ie.version>
<leg_uk.version>17-6-6</leg_uk.version>
<leg_na.version>17-8-103</leg_na.version>
</properties>
如何生成这样的文件?这就是您要查找的文件吗
def txt = """<properties>
<project.version>module.version</project.version>
<ie.version>17-8-103</ie.version>
<leg_uk.version>17-6-6</leg_uk.version>
<leg_na.version>17-8-103</leg_na.version>
</properties>"""
def xml = new XmlParser().parseText(txt)
new File('tmp').withWriter { w ->
xml.children().each {
w << "${it.name()}=${it.value().text()}\n"
}
}
@弗朗索瓦:你的问题是什么?。。。我想他/她想知道如何创建一个文本文件,其中包含project.version=17-8-103和leg_uk.project.version=17-8-103给定的XML,如问题所示。我想通过解析给定的XML生成给定的文本文件。是。。非常感谢你。我被困在如何解析*.version标记上。这起作用了…:
def txt = """<properties>
<project.version>module.version</project.version>
<ie.version>17-8-103</ie.version>
<leg_uk.version>17-6-6</leg_uk.version>
<leg_na.version>17-8-103</leg_na.version>
</properties>"""
def xml = new XmlParser().parseText(txt)
new File('tmp').withWriter { w ->
xml.children().each {
w << "${it.name()}=${it.value().text()}\n"
}
}