UnicodeDecodeError: ‘gbk’ codec can’t decode byte 0xa4 in position 4: illegal multibyte sequence
问题出现的操作
- 操作系统: windows 10
- 语言: python
- 操作 txt文本文件(其他的未遇见,以后再作补充)
示例
with open('./静夜思.txt') as f0:
# 文件读取
data = f0.read()
with open('静夜思v1.0.txt', 'w') as f1:
datalist = data.split(' ')
for i in datalist:
# 文件写入
f1.write(i)
# 添加换行符
f1.write('\n')
如上代码出现问题点的:
- 读取原txt文件时候,读取内容编码错误,无法读取
- 写入新txt文件时候,写入内容编码错误,文件乱码
解决方法
为open操作添加编码方式属性
# 为open操作指定编码方式
with open('./静夜思.txt', encoding='UTF-8') as f0:
data = f0.read()
# 指定编码方式
with open('静夜思v1.0.txt', 'w', encoding='UTF-8') as f1:
datalist = data.split(' ')
for i in datalist:
# 文件写入
f1.write(i)
# 添加换行符
f1.write('\n')
(其他方法,容后再试)