解決python寫入xml中文亂碼的問題


用vscode打開xml文件編碼是utf-8,xml文件開頭也表明utf-8編碼,且python讀取xml文件沒有影響。一旦在xml中寫入中文就導致亂碼,再次打開xml文件就會報錯:

xml.parsers.expat.ExpatError: not well-formed (invalid token)

找了很多辦法,比如修改vscode的設置,但是都沒有效果。最終發現打開文件時需要表明編碼格式,把:

with open(f'{xmlName}.xml', 'w') as f:
  DomTree.writexml(f, addindent='', encoding='utf-8')

改成:

with open(f'{xmlName}.xml', 'w', encoding='utf-8') as f:
    DomTree.writexml(f, addindent='', encoding='utf-8')

問題解決


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM