ベルAimsaard:
私はparseTextとXMLの値を更新します。
これは私のXMLであります
def xmlText = '''<BookRoot>
<Book>
<startDate>2005-02-14T00:00:00.000</startDate>
<endDate>2015-01-31T00:00:00.000</endDate>
<Author>Manu</Author>
</Book>
<Book>
<startDate>2005-02-01T00:00:00.000</startDate>
<endDate>9999-12-31T00:00:00.000</endDate>
<Author>Liverpool</Author>
</Book>
</BookRoot>'''
def xml = new XmlSlurper().parseText(xmlText);
これは、予想される結果です。
<BookRoot>
<Book>
<startDate>CurrentDate</startDate>
<endDate>FutureDate</endDate>
<Author>Manu</Author>
</Book>
<Book>
<startDate>CurrentDate</startDate>
<endDate>FutureDate</endDate>
<Author>Liverpool</Author>
</Book>
</BookRoot>
私はこのコードを使用してみました
xml.Book.each{ it->
it.startDate[0].value = 'CurrentDate'
it.endDate[0].value = 'FutureDate'
}
println XmlUtil.serialize(xml)
しかしたstartDateの値とendDateにの値が更新されません。
cfrick:
あなたはに持っているreplaceBody
タグの。例えば
it.startDate.replaceBody 'CurrentDate'