Python中dom写xml,含属性设置
dom写xml
1.引⼊包
import xml.dom.minidom
2.writexml⽅法
writexml(writer, indent, addindent, newl, encoding)
writer是⽂件对象
indent是每个tag前填充的字符,如:' ',则表⽰每个tag前有两个空格
addindent是每个⼦结点的缩近字符,如下⾯的例⼦中单引号中我直接⽤的tab键
newl是每个tag后填充的字符,如:'\n',则表⽰每个tag后⾯有⼀个回车
encoding是⽣成的XML信息头中的encoding属性值,在输出时minidom并不真正进⾏编码的处理,如果你保存的⽂本内容中有汉字,则需要⾃已进⾏编码转换。
3.直接上代码
#xmlTest_write.py
# -*- coding: utf-8 -*-
import xml.dom.minidom
#⽣成xml⽂件
def GenerateXml():
impl = xml.DOMImplementation()
#设置根结点emps
dom = ateDocument(None, 'emps', None)
root = dom.documentElement
employee = ateElement('emp')
#增加属性
employee.setAttribute("empno","1111")
root.appendChild(employee)
#设置⼦结点
#ename
ateElement('ename')
python处理xml文件ateTextNode('杰克')
nameE.appendChild(nameT)
#⼦节点添加属性
nameE.setAttribute("lastname","克")
employee.appendChild(nameE)
#age
ateElement('age')
ateTextNode('33')
nameE.appendChild(nameT)
employee.appendChild(nameE)
f= open('l', 'w') #w替换为a,追加
dom.writexml(f, addindent=' ', newl='\n')
f.close()
GenerateXml()
4.运⾏结果,⽣成的l⽂件
<?xml version="1.0" ?>
<emps>
<emp empno="1111">
<ename lastname="克">杰克</ename> <age>33</age>
</emp>
</emps>
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论