下面是在我的txt文件中我要将其粘贴到资源标记内的xml文件中,而没有来自txt文件的标记有没有办法做到这一点我尝试了很多但是失败了我想将它附加到xml文件基本上
TXT FILE
<resources>
<format fieldOrder="upper first" frameDuration="200/5000s" height="1080" id="3305" name="FFVideoFormat1080i50" width="1920"></format>
</resource>
XML文件
<resource>
<asset id="r28" name="Poldark_S03E02_2tk_UK_Music_20170428.L" uid="1F74A">
</asset>
</resources>
答案 0 :(得分:0)
你说你想要追加&#39;但我认为您希望将format
元素放在 resource
元素中。如果这是正确的,那么重要的是要知道根元素的insert
方法。
这里我将字符串转换为xml树。然后我确定了这些树的根。完成后,我选择txt_file
树的第一个子项,并将其插入xml_file
树根的子项列表的位置0。
from lxml import etree
txt_file = '''\
<resources>
<format fieldOrder="upper first" frameDuration="200/5000s" height="1080" id="3305" name="FFVideoFormat1080i50" width="1920"></format>
</resources>'''
xml_file = '''\
<resource>
<asset id="r28" name="Poldark_S03E02_2tk_UK_Music_20170428.L" uid="1F74A"></asset>
</resource>'''
txt_tree = etree.fromstring(txt_file)
xml_tree = etree.fromstring(xml_file)
txt_root = txt_tree.getroottree().getroot()
xml_root = xml_tree.getroottree().getroot()
xml_root.insert(0, txt_root.getchildren()[0])
print (etree.tostring(xml_tree))
结果:
b'<resource>\n\t<format fieldOrder="upper first" frameDuration="200/5000s" height="1080" id="3305" name="FFVideoFormat1080i50" width="1920"/>\n<asset id="r28" name="Poldark_S03E02_2tk_UK_Music_20170428.L" uid="1F74A"/>\n</resource>'