我正在修改XML文档xml.etree.ElementTree,然后将新的(修改后的) XML结构写到一个新文件中。
如果我比较原始的和新的,我看到python改变了结束标记的样式。
原创风格:
<prop name="Type"></prop>修改后的样式:
<prop name="Type" />我知道新的风格是完全正确的,但我有点担心,它可能会对我正在工作的遗留系统造成一些负面影响。那么,是否有机会拥有与原始XML文档(而不是短小的<prop name="Type" />)相同的闭合风格呢?
修改后的树通过以下方式写回文件:
tree.write(panelModPath,encoding='utf-8', xml_declaration=True) 发布于 2020-03-23 23:57:58
write方法接受method参数。您可以将其设置为html以保留结束标记。
import xml.etree.ElementTree as ET
from io import BytesIO
source = """
<prop name="Type"></prop>
"""
tree = ET.ElementTree(ET.fromstring(source))
file = BytesIO()
tree.write(file, encoding='utf-8', method="html", xml_declaration=True)
print(file.getvalue())打印:
b'<prop name="Type"></prop>'https://stackoverflow.com/questions/60816649
复制相似问题