UnicodeDecodeError - 将编码添加到自定义函数输入
UnicodeDecodeError - Add encoding to custom function input
你能告诉我我目前的思维方式哪里出了问题吗?这是我的功能:
def replace_line(file_name, line_num, text):
lines = open(f"realfolder/files/{item}.html", "r").readlines()
lines[line_num] = text
out = open(file_name, 'w')
out.writelines(lines)
out.close()
这是一个被调用的例子:
replace_line(f'./files/{item}.html', 9, f'text {item} wordswordswords' + '\n')
我需要将文本输入编码为 utf-8。我不确定为什么我还不能做到这一点。我还需要保留 fstring 值。
我一直在做一些事情,比如添加:
str.encode(text)
#or
text.encode(encoding = 'utf-8')
到我的替换行功能的顶部。这没有用。我尝试了几十种不同的方法,但每种方法都继续给我留下这个错误。
UnicodeDecodeError: 'charmap' codec can't decode byte 0x90 in position 2982: character maps to
undefined
您需要将编码设置为 utf-8 才能打开要读取的文件
lines = open(f"realfolder/files/{item}.html", "r", encoding="utf-8").readlines()
并打开要写入的文件
out = open(file_name, 'w', encoding="utf-8")
你能告诉我我目前的思维方式哪里出了问题吗?这是我的功能:
def replace_line(file_name, line_num, text):
lines = open(f"realfolder/files/{item}.html", "r").readlines()
lines[line_num] = text
out = open(file_name, 'w')
out.writelines(lines)
out.close()
这是一个被调用的例子:
replace_line(f'./files/{item}.html', 9, f'text {item} wordswordswords' + '\n')
我需要将文本输入编码为 utf-8。我不确定为什么我还不能做到这一点。我还需要保留 fstring 值。
我一直在做一些事情,比如添加:
str.encode(text)
#or
text.encode(encoding = 'utf-8')
到我的替换行功能的顶部。这没有用。我尝试了几十种不同的方法,但每种方法都继续给我留下这个错误。
UnicodeDecodeError: 'charmap' codec can't decode byte 0x90 in position 2982: character maps to undefined
您需要将编码设置为 utf-8 才能打开要读取的文件
lines = open(f"realfolder/files/{item}.html", "r", encoding="utf-8").readlines()
并打开要写入的文件
out = open(file_name, 'w', encoding="utf-8")