[問題] 中文字內容的utf-8編碼xml檔之處理

作者: kino818 (好多夢 層層疊疊又斑駁)   2023-12-08 23:20:11
各位大大 晚安
有一個cd_catalog.xml檔案(以utf-8編碼)如下
<CATALOG>
<CD>
<ARTIST>&#x5468;&#x6770;&#x502b</ARTIST>
</CD>
</CATALOG>
上面是某設備的輸出檔案cd_catalog.xml(以utf-8編碼)
以Windows 10的筆記本notepad打開,看到是上面unicode編碼方式
我不知道第一個字元&#x5468,為何不是\u5468的unicode編碼表示方式?
上面unicode編碼處是下面的"周杰倫"
<CATALOG>
<CD>
<ARTIST>周杰倫</ARTIST>
</CD>
</CATALOG>
有讀過python的xml處理的書
也問過bing copilot(chatGPT)
還是不了解用筆記本打開cd_catalog.xml是上面第一種編碼方式,如何用python程式碼
Windows notepad打開可轉成上面第二種中文字顯示的unicode檔
decoded_string = bytes(unicode_string, "utf-8").decode("unicode_escape")
除此之外,上面程式碼也不了解
再請各位大大指引方向,我再去看相關資料
謝謝大大
作者: lycantrope (阿寬)   2023-12-08 23:36:00
那就是xml unicode的寫法啊
作者: kino818 (好多夢 層層疊疊又斑駁)   2023-12-09 11:06:00
謝謝1F大大的指教已解決問題,str.encode('utf-8')可將來源編碼成xml unicode編碼,例如&#x9999;,再多接.decoce('utf-8')可讓筆記本看到中文字

Links booklink

Contact Us: admin [ a t ] ucptt.com