1. 程式人生 > >文件-讀取與編碼檢測

文件-讀取與編碼檢測

bsp 字節 char 需要 AR 二進制 python3 div res

文件存放在硬盤是以二進制方式存儲,讀取出來需要對其根據字符編碼表進行轉換,python3默認以utf-8編碼。

utf8三個字節一個字符,gbk兩個字節一個字符

文件讀取

以utf-8編碼打開gbk存儲的文件並讀取內容

f=open(file=test.txt,mode=r,encoding=utf-8)
data=f.read()
f.close()
print(data)

file:需打開的文件

mode:打開方式

encoding:打開的編碼格式

技術分享圖片

以gbk方式打開即可正常讀取

f=open(file=test.txt,mode=r,encoding=gbk
) data=f.read() f.close() print(data)

技術分享圖片

文件編碼檢測

chardet更具編碼規律嘗試檢測文件編碼

import chardet

f=open(test.txt,mode=rb)
data=f.read()
f.close()
result=chardet.detect(data)
print(result)

技術分享圖片

confidence:編碼可信度

encoding:可能的編碼

根據可能的編碼格式進行解碼(decode)

import chardet

f=open(test.txt,mode=rb)
data=f.read()
f.close()
result
=chardet.detect(data) print(result) #根據chardet檢測出來的編碼格式進行解碼 print(data.decode(gb2312))

技術分享圖片

文件-讀取與編碼檢測