检查Groovy中的XML节点值

时间:2017-06-02 15:18:30

标签: groovy

我正在迭代XML格式的非常大的REST api响应。例如,每当我看到一个名为<TaxiCode>的节点时,我想将它的值保存到变量中(下面我只是打印出来)。下面的代码只是一个片段,并且会遍历每个节点。

 def doc = new XmlSlurper().parseText(xmlResponse)
 doc.Itinerary.each { Itinerary ->
 Itinerary.children().each { tag ->
      if (${tag.name()} == "TaxiCode") {
                println "${tag.name()}: ${tag.text()}"
      }

 ...

我不确定如何格式化if语句,对Groovy来说很新,我找不到任何类似的代码。

我不想做断言! 任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

你可以单行做:

println doc.'**'.findAll{it.name() == 'TaxiCode'}*.text()