Groovy的XML解析
问题描述:
嗨,我是新来的Groovy和我有解析如何常规XMLGroovy的XML解析
<schema-definition name="Standard" >
<field-type name="Standard:Integer" descr="A whole number." base-type="long"/>
<field-type name="Standard:Boolean" descr="A boolean value." base-type="boolean"/>
<field-type name="Standard:String" descr="A string" base-type="string"/>
</schema-definition>
当我尝试
document = groovy.xml.DOMBuilder.parse(new FileReader('D:/test.xml'))
rootElement = document.documentElement
use(groovy.xml.dom.DOMCategory)
{
field-types=rootElement.field-type
println field-types
}
我竟然不编一个误区: (场 - 类型)是一个二进制表达式,但它应该是一个变量表达式:13列:20
答
它不编译,因为字段类型中的“ - ”是一个运算符,因此不能成为名称。另外,如果您访问标签字段类型,则必须使用如下所示的引号:
def fieldTypes = rootElement."field-type"
这看起来像是一种笨拙的方式。为什么不给XMLSlurper一个去。它更加Groovy! – sbglasius 2011-02-03 13:59:00