编解码器无法解码字节 0x81
codec can't decode byte 0x81
我有一段简单的代码:
file = open(filename, "r", encoding="utf-8")
num_lines = sum(1 for line in open(filename))
我只想获取文件中的行数。但是我不断收到此错误。我正在考虑跳过 Python 并在 C# 中完成它 ;-)
有人可以帮忙吗?我在搜索错误后添加了 'utf-8' 并阅读它应该修复它。该文件只是一个简单的文本文件,而不是图像。虽然文件很大。它实际上是一个 CSV 字符串,但我只想在开始处理之前了解行数。
非常感谢。
in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 4344:
character maps to <undefined>
好像是编码问题。
在您的示例代码中,您打开文件两次,第二次不包含编码。
试试下面的代码:
file = open(filename, "r", encoding="utf-8")
num_lines = sum(1 for line in file)
或(最近):
with open(filename, "r", encoding="utf-8") as file:
num_lines = sum(1 for line in file)
我有一段简单的代码:
file = open(filename, "r", encoding="utf-8")
num_lines = sum(1 for line in open(filename))
我只想获取文件中的行数。但是我不断收到此错误。我正在考虑跳过 Python 并在 C# 中完成它 ;-)
有人可以帮忙吗?我在搜索错误后添加了 'utf-8' 并阅读它应该修复它。该文件只是一个简单的文本文件,而不是图像。虽然文件很大。它实际上是一个 CSV 字符串,但我只想在开始处理之前了解行数。
非常感谢。
in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 4344:
character maps to <undefined>
好像是编码问题。
在您的示例代码中,您打开文件两次,第二次不包含编码。
试试下面的代码:
file = open(filename, "r", encoding="utf-8")
num_lines = sum(1 for line in file)
或(最近):
with open(filename, "r", encoding="utf-8") as file:
num_lines = sum(1 for line in file)