天天看點

groovy入門6 xml簡單操作

下面示範一些簡單操作xml檔案的方法,主要包括:1讀取xml檔案内容,2 字元串建構xml, 3 建構xml, 4 操作xml xml檔案内容如下: <langs type="current">

  <language>Java</language>

  <language>Groovy</language>

  <language>JavaScript</language>

</langs>

//1讀取xml檔案中内容 def langs = new XmlParser().parse("E:\\language.xml") println "type= ${langs.attribute('type')}"//langs可以直接操作xml中内容了 langs.language.each{//十分強大的直接周遊language的内容     println it.text() }

//2 字元串變量和XML def xml =""" <langs type="current">   <language>Java</language>   <language>Groovy</language>   <language>JavaScript</language> </langs> """ def langs = new XmlParser().parseText(xml) println "type= ${langs.attribute('type')}"//langs可以直接操作xml中内容了 langs.language.each{//十分強大的直接周遊language的内容     println it.text() } //3 建構xml def str = new StringWriter() def xml = new groovy.xml.MarkupBuilder(str) xml.langs(type:"current",count:3){     language('java')     language('Groovy')     language('javascript') }

println str //4 操作xml def xml ="""

<langs type="current">

  <language>Java</language>

  <language>Groovy</language>

  <language>JavaScript</language>

</langs>

"""

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

println "type= ${langs.attribute('type')}"//langs可以直接操作xml中内容了

langs.language.each{//十分強大的直接周遊language的内容

    println it.text()

}

[email protected] = 5;//增加屬性

[email protected] = 'future';//修改屬性

langs.remove(langs.language[1])//删除節點

println langs

println langs.language[0].text()

langs.value = langs.language.sort{

    it.text()

}.reverse()//給節點排序

println langs 由于沒有操作添加xml節點的示例,如有知道者,請賜教

參考資料: http://www.ibm.com/developerworks/cn/java/j-pg05199/