我有一个 XML 文件,它没有单个根标签。我想向此 XML 文件添加一个新的根标记。
下面是现有的 XML:
<A>
<Val>123</Val>
</A>
<B>
<Val1>456</Val1>
</B>
现在我想添加根标记“X”,因此最终的 XML 将如下所示:
<X>
<A>
<Val>123</Val>
</A>
<B>
<Val1>456</Val1>
</B>
</X>
我尝试使用下面的Python代码:
from xml.etree import ElementTree as ET
root = ET.parse(Input_FilePath).getroot()
newroot = ET.Element("X")
newroot.insert(0, root)
tree = ET.ElementTree(newroot)
tree.write(Output_FilePath)
但在第一行我收到以下错误:
xml.etree.ElementTree.ParseError: junk after document element: line 4, column 4
正如@kjhughes 的评论中所指出的,XML 规范要求文档必须具有单个根元素。
from xml.etree import ElementTree as ET
node = ET.parse(Input_FilePath)
xml.etree.ElementTree.ParseError: junk after document element: line 4, column 0
您需要手动读取文件并自行添加标签:
from xml.etree import ElementTree as ET
with open(Input_FilePath) as f:
xml_string = '<X>' + f.read() + '</X>'
node = ET.fromstring(xml_string)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)