Mac Excel打開UTF-8格式的文件亂碼

今天在寫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

修改後結果:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章