簡體   English   中英

如何使用“通常的”自閉合/標題標簽編寫XML?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM