文件-读取与编码检测
Posted 丫丫625202
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文件-读取与编码检测相关的知识,希望对你有一定的参考价值。
文件存放在硬盘是以二进制方式存储,读取出来需要对其根据字符编码表进行转换,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\'))
以上是关于文件-读取与编码检测的主要内容,如果未能解决你的问题,请参考以下文章