python读取任意编码格式的文本
前言
有的时候默认使用utf8格式来读取文本,会导致报错。
如果对性能没有要求,可以在读取前使用chartdet库来判断文本编码。
代码示例
import chardet
def get_code(file_path):
with open(file_path, 'rb') as f:
data = f.read()
result = chardet.detect(data)
f.close()
return result.get("encoding", None)
file_path = r"C:\Users\Desktop\track.txt"
encode_type = get_code(file_path)
with open(file_path, 'r', encoding=encode_type) as read_file:
lines = read_file.readlines()