【python】python讀取文件報錯UnicodeDecodeError: 'gbk' codec can't decode byte 0xac in position 2: illegal multibyte sequence


python讀取文件報錯UnicodeDecodeError: 'gbk' codec can't decode byte 0xac in position 2: illegal multibyte sequence

 

示例代碼:

fileName = 'E:/2/采集數據_pswf12_180大0小35750_20181206.txt'

currentFile = open(fileName)
content = currentFile.read()
print(content)

 

報錯原因:

要打開的文件中,有‘gbk’解析不了的文本內容

那么可能是文件格式並非'gbk'格式的。

 

解決方法:

1.先設定編碼方式打開文件

currentFile = open(fileName,encoding='gbk')

當然,如果上面報錯就是'gbk'編碼打開文件失敗,那你這里還是指定gbk打開文件,是極大可能報錯的。

 

2.切換其他的文件編碼方式

currentFile = open(fileName,encoding='utf-8')

一般情況下,切換后是可以解決問題的。

 

3.如果第二步依舊沒有解決,可以選擇使用errors='ignore'屬性忽略編譯不了的問題[如果只是想打開文件的話]

currentFile = open(fileName,encoding='gbk',errors='ignore')

但是這樣雖然可以打開文件,極大可能出現讀取亂碼的問題

 

 

最終,推薦第二種!!!

===========如果,想在打開文件之前,就能判斷出文件文本的編碼方式,然后根據對應的編碼方式打開文件,豈不是更好?點進去===========

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM