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')
但是這樣雖然可以打開文件,極大可能出現讀取亂碼的問題
最終,推薦第二種!!!
===========如果,想在打開文件之前,就能判斷出文件文本的編碼方式,然后根據對應的編碼方式打開文件,豈不是更好?點進去===========