带有条件的 Groovy-XML 属性添加



我有一个 xml 文件和 csv 文件,我尝试使用 csv 值更新我的 xml,但它没有被添加并返回空值。

xml 文件 csv 内容分别如下所示。

def xmldata='''<data>
<TYPE name="Semester1">
<SUBTYPE name="girl" age="21"/>
</TYPE>
<TYPE name="semester2">
<SUBTYPE name="boy" age="23"/>
</TYPE>
</data>'''
def csv='''name,name,mark
semester1,girl,50
semester2,boy,75'''

我想检查 csv 的TYPE.nameSUBTYPE.name是否与 xml 匹配并更新它们。

def root2 = new XmlSlurper().parseText(xmldata)
root2.TYPE.SUBTYPE.find{it.@name=='girl')}.@mark=50 //this is adding the values

如何检查TYPE.nameSUBTYPE.name匹配并将标记添加为另一个属性?

假设将在第一学期添加。

root2.TYPE.find{it.@name=='Semester1').SUBTYPE.find{it.@name=='girl')}.@mark=50

最新更新