python读写xml文件

onfig.xml文件如下:

<?xml version="1.0" standalone="yes" ?>
<CONFIG_LIST>
 <COMP NAME="oracle.assistants.netca.client" VER="11.2.0.1.0" PLAT="NT_X86">
    <path value="/opt/imap/lib" />
    <path value="/opt/imap/med/lib1" />
    <path value="/opt/imap/med/lib2" />
    <path value="/opt/imap/med/lib3" />
    <path value="/opt/imap/med/lib4" />
 </COMP>
</CONFIG_LIST>

 

1、读xml文件

[python]  view plain copy
  1. # -*- coding: gb18030 -*-     
  2.   
  3. #获取 path下得value属性集合,并进行替换          
  4. def get_tagname():     
  5.     from xml.dom.minidom import parse, parseString  
  6.     doc = parse("f:\\config.xml")    
  7.     for node in doc.getElementsByTagName("path"):     
  8.         value_str = node.getAttribute("value")  
  9.         if value_str.find("/med/")>0:  
  10.             print value_str.replace('/opt/imap/',"/opt/oss/")  
  11.         else:  
  12.             print value_str   
  13.   
  14. get_tagname()  


  

2、生成xml文件

[python]  view plain copy
  1. # -*- coding: gb18030 -*-     
  2. #生成xml文件         
  3. def GenerateXml():  
  4.   import xml.dom.minidom  
  5.   impl = xml.dom.minidom.getDOMImplementation()  
  6.   dom = impl.createDocument(None'CONFIG_LIST'None)  
  7.   root = dom.documentElement    
  8.   employee = dom.createElement('COMP')  
  9.   root.appendChild(employee)  
  10.     
  11.   nameE=dom.createElement('path')  
  12.   nameT=dom.createTextNode('linux')  
  13.     
  14.   nameE.appendChild(nameT)  
  15.   nameE.setAttribute("value","aaaaaaaaaaa"#增加属性  
  16.   employee.appendChild(nameE)  
  17.     
  18.   
  19.   f= open('f:\\config_new.xml''a')  
  20.   dom.writexml(f, addindent='  ', newl='\n')  
  21.   f.close()    
  22.   
  23. GenerateXml()  



生成的config_new.xml如下:

<?xml version="1.0" ?>
<CONFIG_LIST>
  <COMP>
    <path value="aaaaaaaaaaa">
      linux
    </path>
  </COMP>
</CONFIG_LIST>           

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值