UnicodeEncodeError: 'gbk' codec can't encode character '\uff64' in position 0: illegal multibyte sequence
出现原因:“gbk”编解码器无法对’、'进行编码,
解决办法:此时只需要替换掉无法编码的符号即可。
失败案例:
filename = "D:\新建文件.txt" # 读取方式为“a”时,文本会自己创建(全局变量)
content = '研发、生产和销售'
def text_write(data):
with open(filename,'a') as file_object:
file_object.write(data)
file_object.close() # 关闭文件
text_write(content)
运行结果为:
UnicodeEncodeError: 'gbk' codec can't encode character '\uff64' in position 2: illegal multibyte sequence
解决方法为:用’、‘替换掉’、’
content = content.replace('、', '、') # 将'、'符号换成'、'就可以了,原因是“gbk”编解码器无法对'、'进行编码,此时只需要替换掉无法编码的符号即可。
成功运行:
filename = "D:\新建文件.txt" # 读取方式为“a”时,文本会自己创建(全局变量)
content = '研发、生产和销售'
content = content.replace('、', '、') # 将'、'符号换成'、'就可以了,原因是“gbk”编解码器无法对'、'进行编码,此时只需要替换掉无法编码的符号即可。
def text_write(data):
with open(filename,'a') as file_object:
file_object.write(data)
file_object.close() # 关闭文件
text_write(content)