python如何将utf-8编码文件改为ansi编码文件_Excel导入CSV文件乱码?两个小方法让文件正常显示...
最近網(wǎng)友抱怨,收到別人發(fā)來的數(shù)據(jù)表,打開后長這樣:
CSV再EXCEL中顯示為亂碼
除了數(shù)字,其他是啥玩意兒
完全亂碼。。。
(亂碼!亂馬!亂嗎?亂!)
但是當(dāng)使用記事本打開,檢查確認(rèn)是否文件有問題時,顯示完全正常,根本沒有亂碼。
CSV在記事本中顯示正常
用最最普通記事本打開文件能夠正常顯示,用Excel打開卻顯示不正常。。。
這是怎么回事?(亂馬也在想...)
難道沒安裝好需要卸載重裝?(走投無路的招數(shù),然并卵)
No~No~No
實(shí)際上是由于文件編碼與Excel編碼不一致造成。
查看csv文件的編碼:
CSV文件的編碼
使用記事本打開csv文件,點(diǎn)擊另存為,在最下面一行的編碼默認(rèn)顯示,就是此文件的編碼。
而Excel的默認(rèn)編碼目前沒有定論,官方也沒有給出任何解釋說明。
但眾多猜測集中在兩種:或是Unicode或是ANSI。
一邊是編碼UTF-8,另一邊是Unicode/ANSI,兩者不一致。
無論哪一種都是由于Excel與CSV文件的編碼不一致,因此才出現(xiàn)文章開頭的情況。
了解了原理,那么如何解決亂碼問題呢?
以上可知,亂碼是由于兩方編碼不對稱。
而此操作只涉及到原文件和Excel兩方的編碼。
因此,解決方向也是兩個:要么修改原文件編碼,要么修改excel編碼。
- 方法一:修改原文件的編碼
將原文件的編碼修改為ANSI,這樣與Excel默認(rèn)保持一致,使用Excel打開時可以正常顯示
第一步,使用記事本打開csv原文件
第二步,進(jìn)行文件另存的操作
名字無需改動,而是要改動編碼類型,由原來的"UTF-8"改為"ANSI",與excel默認(rèn)編碼保持一致。
現(xiàn)在試一試用Excel打開此文件,亂碼就不見了,數(shù)據(jù)正常顯示(O(∩_∩)O~~)
方法二:將文件導(dǎo)入到Excel中,調(diào)整編碼為可識別格式第一步,選擇導(dǎo)入文件
第二步,選擇文件后,單擊確認(rèn)進(jìn)入文本導(dǎo)入向?qū)?/strong>
找到"文件原始格式",默認(rèn)為"簡體中文",但在前面我們查看過原文件編碼為"UTF-8",因此在這里設(shè)置成"UTF-8"。
手動修改Excel中識別原文件的編碼
這波操作可以理解成在手動告訴Excel不要用默認(rèn)編碼,而是應(yīng)該用原文件的編碼。
第三步,設(shè)置分隔符
通常CSV文件的分隔符有兩種:逗號或者空格。
設(shè)置分隔符
因?yàn)橹霸谑褂糜浭卤静榭磿r,已經(jīng)觀察到使用的是逗號分隔,所以在這里直接勾選逗號即可。
第三步,完成以上兩步,點(diǎn)擊完成,基本上就大功告成了。
此時只要告訴excel要將原文件導(dǎo)入的起始單元格位置就可以開始導(dǎo)入了。如果需要搭建模型,記得把下面的”添加到模型”也勾選上。
表哥TIPS:
用Python導(dǎo)入CSV文件時,同樣不會出現(xiàn)亂碼,而且導(dǎo)入速度很快(千行毫秒)。
代碼貼在下面,感興趣的朋友可以自行試一試。
Python的方法導(dǎo)入csv文件
以上就是目前解決亂碼顯示,常使用的兩個方法,你學(xué)會了嗎?
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的python如何将utf-8编码文件改为ansi编码文件_Excel导入CSV文件乱码?两个小方法让文件正常显示...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 出坞倒计时!首制国产大型邮轮将于 7 月
- 下一篇: python中函数定义可以不包括什么_P