0

可以使用静态类型的 Groovy++ 进行 XML 处理吗?

示例(您可以使用Groovy++ Web 控制台进行测试):

@Typed package test
def CAR_RECORDS = '''
  <records>
    <car name='HSV Maloo' make='Holden' year='2006'>
      <country>Australia</country>
      <record type='speed'>Production Pickup Truck with speed of 271kph</record>
    </car>
  </records>
'''

def records = new XmlSlurper().parseText(CAR_RECORDS)
println records.car
​

结果:

startup failed:
Script1.groovy: 14: Cannot find property car of class GPathResult
 @ line 14, column 9.
   records.car
           ^

1 error
4

1 回答 1

1

看起来不像...您可以使用:

@Typed(TypePolicy.MIXED)

接着

println records.car

有效,但您无法通过以下方式获取属性值:

println records.car.@name

当您收到错误消息时:

Cannot find field name of class Object

我猜 XmlSlurping 目前对于 groovy++ 来说有点过于动态了

于 2011-06-14T10:35:05.407 回答