2013-05-20 56 views
0

我的XML文件中,我要添加XML說Ant任務檢查XML節點在XML文件中存在

<car name="BMW"> 
    <color>Red</color> 
    <model>x3</model> 
    </car> 

我要檢查,如果節點已經存在,那麼我想更新這個otheriwse想添新。

我對ant xmltask很新,所以我的問題可能很簡單。

與問候, 阿維納什Nigam公司

回答

1

使用附加的根標籤<foo></foo>您的例子(需要插入操作),
與xmltask您可以使用=

<!-- edit file in place, use other dest if you need to create a new file --> 
<xmltask source="path/to/file.xml" dest="path/to/file.xml"> 
<!-- create property if car node with name='BMW' exists --> 
<copy path="//car[@name='BMW']/text()" property="modelexists"/> 
<!-- insert new car node if car node with name='BMW' doesn't exist --> 
<insert path="/foo" unless="modelexists"> 
<![CDATA[ 
<car name="BMW"> 
    <color>Red</color> 
    <model>x3</model> 
</car> 
]]> 
</insert> 
<!-- replace car node if car node with name='BMW' exists --> 
<replace path="//car[@name='BMW']" if="modelexists"> 
<![CDATA[ 
<car name="BMW"> 
    <color>Blue</color> 
    <model>x4</model> 
</car> 
]]> 
</replace> 
</xmltask>