繁体   English   中英

如何在Groovy中获取xml标签名称

[英]How to get xml tag names in groovy

任何人都可以帮助我如何在脚本中获取标签名称。在下面的代码中,我需要获取mbrSqncNum?

<Id>059A670</healthCardId> 
<subscriberId>059A625</subscriberId> 
<mbrSqncNum>10</mbrSqncNum> 

假设您具有有效的XML(与您的问题中没有根节点和标签不匹配的情况不同),并假设它存储在String变量中:

def xml = '''<doc>
            |    <healthCardId>059A670</healthCardId> 
            |    <subscriberId>059A625</subscriberId> 
            |    <mbrSqncNum>10</mbrSqncNum> 
            |</doc>'''.stripMargin()

然后,您可以使用以下方法解析此XML:

def doc = new XmlParser().parseText( xml )

(如果在文件中,则可以使用它)

def doc = new XmlParser().parse( xmlFile )

现在,从您的问题中还不清楚您到底想要什么。要打印出所有标签名称,您可以执行以下操作:

// prints '[doc, healthCardId, subscriberId, mbrSqncNum]'
println doc.'**'*.name()

(较长的形式是一样的)

// prints '[doc, healthCardId, subscriberId, mbrSqncNum]'
println doc.breadthFirst()*.name()

或获取标签mbrSqncNum的值,您可以执行以下操作:

// prints '10'
println doc.mbrSqncNum.text()

还是您有其他意思?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM