利用python 创建XML文件
#coding=utf-8
from xml.etree import ElementTree import pdb def printNodeInfo(node): #node.tag 标签名称
#node.text 文本属性
print 'node.tag: %s' %node.tag #node.attrib 属性字典
for key in node.attrib:
print '%s %s' %(key,node.attrib[key])
return None def main(): pdb.set_trace()
try:
#ElementTree.parse(source,parser=None)
#将xml文件加载并返回ElementTree 对象
#parser 是一个可选的参数,如果为空则使用标准的XMLParser
#step 1: 获取 ElementTree 对象
xmlDoc = ElementTree.parse('D:\server\map\App.xml')
#step 2: 获取 根节点
root = xmlDoc.getroot()
#root.getchildren() 获取节点 返回的是列表
gateServerNodeList = root.getchildren() # 下面是在每个gateServer 节点下 增加一个子节点
for node in gateServerNodeList:
# ElementTree.SubElement(parentNode,tagName)
#给parentNode 增加一个子节点
#和parentNode.append(Element) 效果一致
newNode = ElementTree.SubElement(node,'ActiveType')
# 设置属性
newNode.attrib['id'] = ''
newNode.attrib['level'] = ''
newNode.attrib['begin'] = ''
newNode.attrib['end'] = ''
#中文 需要 特殊译码
newNode.attrib['tip'] = '测试'.decode('utf-8')
#节点尾部的符号
newNode.tail = '\n'
#node.append(newNode) # 写入文件 调用 之前的ElementTree 对象的
#write(fileName,encoding = None,xml_Decleare = None,default_namespace = None,method = None)
# 其中xml_Decleare 如果为 True 则 在 文档的最上方会写入
#<?xml version="1.0" encoding="utf-8"?>
xmlDoc.write('D:test.xml','utf-8',True)
except Exception as e:
print e return None if __name__ == '__main__':
main()
from xml.etree import ElementTree as ET
tree = ET.parse('first.xml')
root = tree.getroot()
# print(root.tag)
# print(root.attrib)
# print(root.text)
# 创建节点,element类型
son = root.makeelement('tt',{'vv':'KK'})
s = son.makeelement('tt',{'kk':''})
# son = ET.Element('tt',{'vv':'KK'})
# s = ET.Element('tt',{'kk':'132443'})
son.append(s)
root.append(son)
tree.write('out.xml')
简单创建xml
from xml.etree import ElementTree as ET
root = ET.Element('root',{'age':''})
son=ET.SubElement(root,'root',{'age':''})
ET.SubElement(son,'haha',{'bb':'fhfhf'})
tree = ET.ElementTree(root)
tree.write('aha.xml')
结果
<root age="18">
<root age="18">
<haha bb="fhfhf" />
</root>
</root>
利用python 创建XML文件的更多相关文章
- 使用XML序列化器生成XML文件和利用pull解析XML文件
首先,指定XML格式,我指定的XML格式如下: <?xml version='1.0' encoding='utf-8' standalone='yes' ?> <message&g ...
- 创建xml文件、解析xml文件
1.创建XML文件: import codecs import xml.dom.minidom doc=xml.dom.minidom.Document() print doc root=do ...
- python操作xml文件
一.什么是xml? xml即可扩展标记语言,它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言. abc.xml <?xml version="1.0&q ...
- 使用PYTHON创建XML文档_python
当用GOOGLE查的时候,内容几乎都是一样的.但是你想要的东西,一个也没有.例如,我就找不到中国人写的如何使用PYTHON来创建一个XML文件.当然,直接用文件写的方式也能够达到同样的效果,但是毕竟容 ...
- python解析xml文件之xml.etree.cElementTree和xml.etree.ElementTree区别和基本使用
1.解析速度:ElementTree在 Python 标准库中有两种实现.一种是纯 Python 实现例如 xml.etree.ElementTree ,另外一种是速度快一点的 xml.etree.c ...
- Python 读写XML文件
Python 生成XML文件 from xml.dom import minidom # 生成XML文件方式 def generateXml(): impl = minidom.getDOMImple ...
- .net中创建xml文件的两种方法
.net中创建xml文件的两种方法 方法1:根据xml结构一步一步构建xml文档,保存文件(动态方式) 方法2:直接加载xml结构,保存文件(固定方式) 方法1:动态创建xml文档 根据传递的值,构建 ...
- C#操作XML学习之创建XML文件的同时新建根节点和子节点(多级子节点)
最近工作中遇到一个问题,要求创建一个XML文件,在创建的时候要初始化该XML文档,同时该文档打开后是XML形式,但是后缀名不是.在网上找了好些资料没找到,只能自己试着弄了一下,没想到成功了,把它记下来 ...
- Java 创建xml文件和操作xml数据
java中的代码 import java.io.File; import java.io.StringWriter; import javax.xml.parsers.DocumentBuilder; ...
随机推荐
- 公网访问阿里云数据库MongoDB——填坑日记
业务情景 两台服务器,一台阿里云ECS云服务器(专用网络),另一台是阿里云数据库MongoDB,处于安全考虑MongoDB是不运行外网连接的,那接下来就看怎么实现公网访问. 看到上面红色的网络类型描述 ...
- (luogu4180) [Beijing2010组队]次小生成树Tree
严格次小生成树 首先看看如果不严格我们怎么办. 非严格次小生成树怎么做 由此,我们发现一个结论,求非严格次小生成树,只需要先用kruskal算法求得最小生成树,然后暴力枚举非树边,替换路径最大边即可. ...
- 【BZOJ1969】航线规划(Link-Cut Tree)
[BZOJ1969]航线规划(Link-Cut Tree) 题面 BZOJ 题解 删边操作 套路呀 离线读入倒过来做 变成加边操作 现在考虑怎么确定两点直接的关键路径条数 如果是一棵树,那么每条边都是 ...
- Vue-小demo、小效果 合集(更新中...)
(腾讯课堂学习小demo:https://ke.qq.com/course/256052) 一.简单的指令应用 --打击灭火器 图片素材点击腾讯课堂的链接获取 html: <!DOC ...
- html onclick时间传字符串参数
经常忘记拼html中onclick事件传字符串引号的问题,所以今天记一下! 简单一句话 外面是"",里面就是'',外边是'',里边就是"". 示例: var ...
- c#多线程同步之EventWaitHandle使用
有这么一个场景,我需要借助windows剪贴板把数据插入到word域中. 实现步骤: 1.把剪贴板数据保存到变量. 2.使用剪贴板实现我们的业务. 3.把变量里的数据存回剪贴板. 但是结果却令人诧异, ...
- 9.C++-对象的构造函数(详解)
大家都定义struct或class时,不能给成员直接赋值,那么对象中成员变量的初始值是多少? 对于局部对象变量而言,其成员是个随机值,因为该变量是被分配在栈上,对于其它局部变量也是这样. 对于全局对象 ...
- 线段树 (区间查询最大 区间求和 区间加)带lazy
; struct Segment_tree { struct Node { int val,Max,lazy; ]; void init() { lazy=son[]=son[]=Size=val=M ...
- session、cookie与“记住我的登录状态”的功能的实现
Cookie的机制 Cookie是浏览器(User Agent)访问一些网站后,这些网站存放在客户端的一组数据,用于使网站等跟踪用户,实现用户自定义功能. Cookie的Domain和Path属性标识 ...
- 使用netty的第一个Hello World
server端 package com.netty.test;import io.netty.bootstrap.ServerBootstrap;import io.netty.channel.Cha ...