日期:2014-05-20  浏览次数:20736 次

java多个xml文件合并
例如:有2个xml文件。 a.xml和b.xml 把b.xml和a对比,如果相同则不覆盖如果不同,则吧不同的复制过去形成新的a.xml文件

a.xml:

<conf>
<performance>CPU_USED_PERCENT</performance>
<evtConf>  
   <evt col="DVC_NAME" id="A" key="DVC_NAME" name="设备名称"/>
   <evt col="DVC_TYPE" id="b" key="DVC_TYPE" name="设备类型"/>
</evtConf> 
<collect>     
    <dev ip="10.1.128.53" isOnsite="true" type="FW"> 
      <dvc_att key="checked"/>  
      <att> 
        <attention name="H" value="0"/>  
        <attention name="I" value="0"/>  
        <attention name="L" value="0"/> 
    </dev>      
  </collect>   
</conf>

b.xml


<conf>
<performance>CPU_USED_PERCENT</performance>
<evtConf>  
   <evt col="DVC_NAME" id="A" key="DVC_NAME" name="设备名称"/>
   <evt col="DVC_TYPE" id="b" key="DVC_TYPE" name="设备类型"/>
</evtConf> 
<collect>     
    <dev ip="10.1.128.225" isOnsite="true" type="FW"> 
      <dvc_att key="checked"/>  
      <att> 
        <attention name="H" value="0"/>  
        <attention name="I" value="0"/>  
        <attention name="L" value="0"/> 
    </dev>      
  </collect>   
</conf>


最后合并成这样的:

<conf>
<performance>CPU_USED_PERCENT</performance>
<evtConf>  
   <evt col="DVC_NAME" id="A" key="DVC_NAME" name="设备名称"/>
   <evt col="DVC_TYPE" id="b" key="DVC_TYPE" name="设备类型"/>
</evtConf> 
<collect>   
<dev ip="10.1.128.53" isOnsite="true" type="FW"> 
      <dvc_att key="checked"/>  
      <att> 
        <attention name="H" value="0"/>  
        <attention name="I" value="0"/>  
        <attention name="L" value="0"/> 
    </dev>    
    <dev ip="10.1.128.225" isOnsite="true" type="FW"> 
      <dvc_att key="checked"/>  
      <att> 
        <attention name="H" value="0"/>  
        <attention name="I" value="0"/>