[英]How to write XML with “usual” self-closing/header tags?
這是我的代碼:
from xml.dom import minidom as md
doc = md.parse('file.props')
# operations with doc
xml_file = open('file.props', "w")
doc.writexml(xml_file, encoding="utf-8")
xml_file.close()
我解析XML,然后執行一些操作,而不是打開並在上面寫。 但是例如,如果在我的文件中得到:
<MY_TAG />
^
它重寫為:
<MY_TAG/>
^
我知道這似乎無關緊要,但是我的文件一直受到版本控制GIT的監視,該版本控制GIT在每次寫入時該行“不同”。
與標頭相同:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
它成為了:
<?xml version="1.0" encoding="utf-8"?><Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
真煩人。 有什么線索嗎?
通過解析和序列化保持XML格式的怪異是完全不可能的。 如果需要進行文本級比較,唯一的方法是規范化要比較的格式(那里有各種XML規范化工具)。
原則上,您可以將git配置為使用XML感知的差異工具進行比較,但是請不要向我詢問詳細信息,這不是我自己做過的事情。 我一直都生活在它運行不佳的事實上。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.