我正在使用Python和minidom在现有的XML文件中插入Data。当我这样做时,我得到了正确的XML代码,但它看起来并不像我想要的那样。 这是我的xml文件的一个例子。
<?xml version="1.0" ?>
<sim>
<tool name="A"/>
<calcSequence>
<entry>FD_so</entry>
<entry>FD_ped</entry>
<entry>FD_veh</entry>
</calcSequence>
</sim>
现在代码:
calcSequence = doc.getElementsByTagName('calcSequence')[0]
entrys = calcSequence.getElementsByTagName('entry')
hnode = doc.createElement('entry')
htext = doc.createTextNode('test')
hnode.appendChild(htext)
calcSequence.insertBefore(hnode,entrys[2])
结果:
<calcSequence>
<entry>FD_so</entry>
<entry>FD_ped</entry>
<entry>test</entry><entry>FD_veh</entry>
</calcSequence>
有没有办法在2 <entry>
s之间插入缺少的换行符?
doc.toprettyxml()不是解决方案,因为这只是xml的一小部分,我不想在文档中的每一行之后插入空行。
答案 0 :(得分:3)
您是否尝试过在文本节点中插入换行符?
# Put this after your existing code
newline = doc.createTextNode('\n')
calcSequence.insertBefore(newline, entrys[2])