在做批量数据导入到数据库中,如果不知道文件的编码格式,使用UTF-8是可以解决大部分问题,但是遇到特殊情况,比如:UTF-16就不能直接导入了,这时为了快速判断文件的编码格式,此时就需要用到自动编码格式识别,我们不需要逐个去使用chardet去判断文件的编码格式
chardet的使用
import chardet #导入库
with open('../../Finance/code.txt','rb') as f : #以读的方式打开要查看的文件
file = chardet.detect(f.read()) #使用chardet的detect的方法
print(file)
查看结果
{'encoding': 'utf-8', 'confidence': 0.99, 'language': ''}
可以写个函数在这样方便以后调用。
def get_encoding(file):
with open(file,'rb') as f:
tmp = chardet.detect(f.read())
return tmp['encoding']
#file写上文件路径即可