比方说,有以下XML结构:的Groovy的XmlSlurper:查找XML结构元素
<Data>
<DataFieldText>
<DataFieldName>Field #1</DataFieldName>
<DataFieldValue>1</DataFieldValue>
</DataFieldText>
<DataFieldText>
<DataFieldName>Field #2</DataFieldName>
<DataFieldValue>2</DataFieldValue>
</DataFieldText>
<DataFieldText>
<DataFieldName>Field #3</DataFieldName>
<DataFieldValue>3</DataFieldValue>
</DataFieldText>
</Data>
使用Groovy的XmlSlurper
我需要做到以下几点:
从Data
开始发现其中包含了该元素值Field #1
在<DataFieldName>
元素中。如果找到,则获得属于同一级别的相应<DataFieldValue>
的值。
非常令人印象深刻,读后这我觉得不得不去重构我所有的XmlSlurper代码(诅咒你) –
是不是'NodeChildren'的List?更好的可能是:'new XmlSlurper()。parseText(xml).DataFieldText.findAll {it.DataFieldName.text()=='Field#1'} * .DataFieldValue * .text()' –