考虑以下XML,如果有许多类似不同名称的项目,如何使用foo作为过滤器来使用Ant任务XMLTask
来更改栏。
<string name="foo">bar</string>
<string name="another">a value goes here</string>
<string name="somethingelse">some other value</string>
答案 0 :(得分:1)
首先,我们假设你的xml实际上是有效的并且包含一个顶级元素,例如
<mydocument>
<string name="foo">bar</string>
<string name="another">a value goes here</string>
<string name="somethingelse">some other value</string>
</mydocument>
然后,特定<string>
元素的XPath表达式为:
//string[@name='foo']
(对于值,请添加\text()
。
最后,XmlTask变为,例如:
<xmltask source="source.xml" dest="target.xml">
<replace path="//string[@name='foo']/text()" withText="foobar"/>
</xmltask>