无法使用XMLSlurper按标记名称查找内容

时间:2016-03-17 21:12:23

标签: groovy xmlslurper

我正在尝试使用XMLSlurper搜索XML文件,在阅读了一些过去的问题之后认为这样做是可行的,但它无法正常工作。

这是xml内容:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="Permissions_DontShowAgain">Do not show again</string>
    <string name="Version">1.32.3</string>
    <string name="RetryNow">Retry Now</string>
    ...

这是代码:

def result = new XmlSlurper().parse(file)
assert result instanceof groovy.util.slurpersupport.GPathResult
def version = result.depthFirst().findAll { it.name() == 'Version' }
println version

如果我在啜饮后做了println,我可以确认找到了文件,结果变量包含其内容。但是如果我打印出它的[]版本。 我想获得1.32.3值。

1 个答案:

答案 0 :(得分:0)

您需要属性名称,而不是标记名称

result.depthFirst().findAll { it.@name.text() == 'Version' }