一日一技:utf-8-sig是什麼?CSV存儲為中文亂碼怎麼解決

2021-02-24 Python數據結構

我們使用Pandas的時候,存儲為csv文件的時候,經常會出現亂碼的情況,原因在於Windows使用BOM來標記文本文件的編碼方式的。UTF-8編碼的文件中,BOM佔三個字節。用UE打開這個文件,切換到十六進位編輯狀態就可以看到開頭的FFFE了。Office、WPS這類軟體通過BOM來識別這個文件是否是UTF-8編碼,很多軟體還要求讀入的文件必須帶BOM。

utf08-sig

總結

"utf-8"是以字節為編碼單元,它的字節順序在所有系統中都是一樣的,沒有字節序問題,因此它不需要BOM,所以當用"utf-8"編碼方式讀取帶有BOM的文件時,它會把BOM當做是文件內容來處理, 也就會發生類似上邊的錯誤。

"uft-8-sig"中sig全拼為 signature 也就是"帶有籤名的utf-8", 因此"utf-8-sig"讀取帶有BOM的"utf-8文件時"會把BOM單獨處理,與文本內容隔離開,也是我們期望的結果。

明天我們來講解一下Python unicode編碼轉換(py->pyc)為gbk或者utf-8過程,你會對編碼知識有更深入的了解。

希望大家可以慢慢領悟!:)

大家一起加油!

本文相關閱讀推薦:

《Python數據結構》堅持用心輸出技術文章,陪你一起,用知識啟迪身心,探索這個世界,創造這個世界,充實這個世界。

如果喜歡我的文章,點個」在看「吧 

相關焦點

  • 記住沒:永遠不要在 MySQL 中使用 UTF-8
    簡單概括如下:MySQL 的「utf8mb4」是真正的「UTF-8」。MySQL 的「utf8」是一種「專屬的編碼」,它能夠編碼的 Unicode 字符並不多。我要在這裡澄清一下:所有在使用「utf8」的 MySQL 和 MariaDB 用戶都應該改用「utf8mb4」,永遠都不要再使用「utf8」。那麼什麼是編碼?什麼是 UTF-8?我們都知道,計算機使用 0 和 1 來存儲文本。
  • 知乎面試官:為什麼不建議在 MySQL 中使用 UTF-8?
    後來找到辦法,通過把 utf8 改成 utf8mb4 就可以了,當時並沒有深究。我突然想到去年操作 MySQL 把 utf8 改成 utf8mb4 的事兒。嗯?他本身不就是 utf8 編碼麼!那我當時還改個錘子?難道,MySQL 的 utf8 不是真正的 UTF-8 編碼嗎??! 臥槽,這 MySQL 有 Bug!
  • 面試官:為什麼不建議在 MySQL 中使用 UTF-8?
    後來找到辦法 -- 通過把 utf8 改成 utf8mb4 就可以了,並沒有深究。一年後,我看到一篇文章講到emoji文字佔4個字節,通常要用utf-8去接收才行,其他編碼可能會出錯。我突然想到去年操作MySQL把utf8改成utf8mb4的事兒。嗯?他本身不就是utf8編碼麼!那我當時還改個錘子?
  • mac技巧:蘋果OFFICE 2011MAC打開WORD字體亂碼解決方法!
    歡迎更多從朋友圈進來的新朋友,喜歡蘋果產品,需要蘋果維修,軟體應用,技術服務的朋友點擊上面「俐冠商貿」直接關注↑微信號:liguanservice-apple
  • 一覺醒來崩潰了,三星手機黑屏、重啟還亂碼
    據報導,這次出問題的機型似乎多為三星Galaxy S8、S9、S10等部分老型號。有人猜測因為閏月引起時間bug,也有人說可能是伺服器被攻擊,截止到寫稿時,三星官方仍然沒有給出解決方案來,只是表明目前已經收到用戶反饋,正在積極排查中。
  • 電錶顯示屏出現「亂碼」,是出問題了嗎?
    原來,高先生是唐縣王京鎮西建陽村村民,現在正值春灌時期,為澆地方便,高先生為機井電錶的電卡充值了200元,結果電卡插到電錶上,電錶不僅沒有充上電費,而且還出現了一條奇怪的「亂碼」。這下把高先生急壞了。高先生拿出手機,上面有他拍下的電錶「亂碼」照片。見到照片,葛磊解釋道:「您誤會了,這並不是亂碼。」「不是亂碼?」
  • 印表機故障:列印一直出現亂碼,什麼原因?
    HP印表機在網絡連接的情況下列印到根本停不下來的情況網絡連接狀態下印表機一開機就不停列印文檔,多數為亂碼或同一份文檔。
  • 如何刪除iphone手機照片,騰出大量存儲空間:告別存儲容量幾乎已滿
    對於手持存儲空間大於128G的iphone機主,請繞行,因為你太豪,本文不適合你。
  • 最近手機收到一堆亂碼簡訊,然後…悲催了!
    維權熱線:024-82708333  QQ:922938 解決之道靠法理,維權>路徑走正途近日北京的王女士向記者反映她遇到的一件怪事:「手機收到了一堆奇怪的亂碼簡訊,話費不知道為什麼特別快就沒了。」  小編問大家:你...們...知...道...這...是...為...什...麼...嗎...?啥?話費被外星人劫持了?當...然...不...是...!
  • 《木筏求生》有什麼常見問題 遊戲常見問題解決方法一覽_18183木筏...
    木筏求生有什麼常見問題?遊戲中有一些小夥伴會經常遇到的問題,今天小編給大家帶來木筏求生常見問題解決方法一覽,感興趣的小夥伴快來看一下吧。
  • iCloud Photo Library:蘋果的新照片雲存儲方案表現如何?
    Dropbox 是我最信賴的雲存儲服務,同時也是非常可靠的同步方案。CameraSync 是 iOS 上專注於圖片備份的一款付費 app,在自動備份方面做得無可挑剔。可惜這個方案只做到了我需求的前兩點。我仍需要手動去刪除 iPhone 裡的照片,而 Dropbox 在照片管理方面下的功夫幾乎為零,又是一個比較糟糕的圖片瀏覽器。
  • 不曾注意的小細節:iPhone 6s存儲性能為何大幅提升?
    相信很人都會把關注點放在更快的處理器、更多的RAM、更大的內部存儲、以及更高容量的電池上,但卻忽略了某些不起眼的地方——比如存儲性能。作為行動裝置的「硬碟」,廠家似乎不願多談。但是對於較真的人們來說,熱門Android手機和iPhone之間,又可以拉出多大的差距呢?