2006-11-25
好爽!groovy一下xml读取
关键字: groovy xml
接触groovy也有比较长一段时间了,刚接触时是刚得挺有趣的,学来玩玩。玩着到后来就忍不住引入到工作中了。多用于做些效率不重要的小任务。最近有个需求是定期从另一个网站提供的接口导入xml数据到数据库,数据量是比较少的。
在Java中我只用过dom4j做xml解释,对着一堆document, node, element之类的东西,还要一层一层的深入。。。想起都已经觉得烦
在groovy的文档上扫了一下,发现有个叫XmlSlurper的东东,提供的接口可以让我们像使用一个对象一样去读一个element,非常直观简单。
用文档中提供的XML为例:
example.xml
readxml.groovy
这样就会打印出N行
car=XXX
car.country=XXX
Wow!好爽
在Java中我只用过dom4j做xml解释,对着一堆document, node, element之类的东西,还要一层一层的深入。。。想起都已经觉得烦
在groovy的文档上扫了一下,发现有个叫XmlSlurper的东东,提供的接口可以让我们像使用一个对象一样去读一个element,非常直观简单。
用文档中提供的XML为例:
example.xml
class XmlExamples {
static 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>
<car name='P50' make='Peel' year='1962'>
<country>Isle of Man</country>
<record type='size'>Smallest Street-Legal Car at 99cm wide and 59 kg in weight</record>
</car>
<car name='Royale' make='Bugatti' year='1931'>
<country>France</country>
<record type='price'>Most Valuable Car at $15 million</record>
</car>
</records>
'''
}
readxml.groovy
def content = .....//省略把xml读入成String的代码
def records = new XmlSlurper().parseText(content)
def allRecords = records.car
allRecords.each() {
println it.name + "=" + it.@name.text()
println it.name + ".country=" + it.country.text()
}
这样就会打印出N行
car=XXX
car.country=XXX
Wow!好爽
发表评论
- 浏览: 39061 次
- 性别:

- 来自: 广州

- 详细资料
搜索本博客
最新评论
-
Swing程序在linux下丢失 ...
难道netbeans里面偶然遇到的无法输入也是这个问题引起的?
-- by pig345 -
思维导图
还不错。。。
-- by blackanger -
推荐一个压缩工具7-zip
rar可以包内文件内容查找,7zip就不行
-- by fkpwolf -
推荐一个压缩工具7-zip
ddandyy 写道rar解压是不要钱的 而且一般压缩软件都有解压RAR功能了 ...
-- by ray_linn -
推荐一个压缩工具7-zip
rar解压是不要钱的 而且一般压缩软件都有解压RAR功能了
-- by ddandyy






评论排行榜