【发布时间】:2015-11-17 10:49:44
【问题描述】:
我正在使用 python 的元素树库来解析/写入一个 xml 文件:
<?xml version='1.0' encoding='utf-8'?>
<data>
<reminder id="9">
<enabled>true</enabled>
<programmename>Show Me Show Me</programmename>
<starttime>10:05</starttime>
<sdate>Tuesday, 17 November 2015</sdate>
<channel>NA</channel>
</reminder>
</data>
我正在使用以下内容将其写出来:
from xml.etree import ElementTree as ET
data = ET.Element("data")
reminder = ET.SubElement(data, "reminder")
reminder.set("id", "9")
enabled = ET.SubElement(reminder, "enabled")
enabled.text = "true"
programmename = ET.SubElement(reminder, "programmename")
programmename.text = new_programmename
starttime = ET.SubElement(reminder, "starttime")
starttime.text = new_programmetime
sdate = ET.SubElement(reminder, "sdate")
sdate.text = new_programmedate
channel = ET.SubElement(reminder, "channel")
channel.text = "NA"
indent(data, level=0)
tree = ET.ElementTree(data)
tree.write(xmlfile, xml_declaration=True, encoding='utf-8', method="xml")
虽然我很难理解如何添加额外的“记录”/元素?例如,xml 看起来像这样:
<?xml version='1.0' encoding='utf-8'?>
<data>
<reminder id="9">
<enabled>true</enabled>
<programmename>Show Me Show Me</programmename>
<starttime>10:05</starttime>
<sdate>Tuesday, 17 November 2015</sdate>
<channel>NA</channel>
</reminder>
<reminder id="10">
<enabled>true</enabled>
<programmename>foo</programmename>
<starttime>13:05</starttime>
<sdate>Wednesday, 18 November 2015</sdate>
<channel>NA</channel>
</reminder>
<data>
任何帮助将不胜感激,我找不到任何对此的参考,或者更确切地说是我能理解的参考......
【问题讨论】:
-
这只是覆盖文件中已经存在的任何现有元素?不是吗?我想添加新元素...
-
你找到解决方案了吗?
-
嗨@SIslam 还没有
标签: python elementtree