Mac Excel開啟UTF 8格式的檔案亂碼

2021-09-22 20:10:44 字數 743 閱讀 6181

今天在寫python的時候發現了乙個問題,用elementtree解析xml的時,生成的csv檔案用excel開啟的時候出現了亂碼的情況

但是用word或者文字開啟的時候就是正常的

原因分析:

此種情況一般是匯出的檔案編碼的問題。在簡體中文環境下,excel開啟的csv檔案預設是ansi編碼,如果csv檔案的編碼方式為utf-8、unicode等編碼可能就會出現檔案亂碼的情況。

解決方案:

1.寫入檔案時使用其他編碼比如gb18030,以上面**為例

csv_file = open('smp2019_ecisa_dev.csv', 'w', encoding='gb18030')
2.用命令列修改編碼方式,進入生成的csv檔案所在的資料夾中,然後輸入以下命令

iconv -f utf8 -t gb18030 原始檔.csv >新檔案.csv
修改後結果:

UTF8格式簡介

utf是unicode傳輸格式,有utf8,utf16,utf32等。這裡介紹utf8。utf8分成單位元組 雙位元組 三位元組 四位元組模式。具體如下 0 x 7bit 相容ascii碼 110 xx 10 11bit 1110 x 10 10 16bit 漢字所在 11110 10 10 10 ...

網頁utf 8亂碼 utf8亂碼

複製 在前 在windows作業系統上使用ie作為瀏覽器時。常常會發生這樣的問題 在瀏覽使用utf 8編碼的網頁時,瀏覽器無法自動偵測 即沒有設定 自動選擇 編碼格式時 該頁面所用的編碼。即使網頁已經宣告過編碼格式 由此造成某些含有中文utf 8編碼的頁面產生空白輸出。由於utf 8為3個位元組表示...

流式校驗UTF8格式

由於某個工程需要校驗資料是否是utf8格式的,然後翻了翻rfc,確實挺簡單的編碼格式,所以直接寫了,但是越寫越感覺不對,位元組不夠時真的需要cache嗎?想肯定還有非常簡單的方法,果不其然,找到了這篇 流式校驗 utf8 原始碼 static unsigned char types static u...