【发布时间】:2017-02-16 04:07:51
【问题描述】:
这是我在这里的第一篇文章,如果我错过了什么,请原谅。 我的 CSV 文件中有一些数据,我正在尝试将数据导入我的产品并收到 UnicodeDecodeError。我的 csv 文件中有一些法语单词
代码:
open_csv = csv.DictReader(open('filename',''rb))
for i in open_csv:
x = find(where={})#mongodb query
x.something = i.get(row_header)
x.save()
我收到 UnicodeDecodeError: 'utf8' codec can't decode byte 0x8e in position 1 error while save the data
【问题讨论】:
-
这是我的代码 open_csv = csv.DictReader(open('filename',''rb)) for i in open_csv: x = find(where={})#mongodb query x.something = i.get(row_header) x.save()
-
我怀疑这是因为文件不是 UTF-8。尝试使用
'mbcs'解码。 -
将该代码编辑到您的问题中;作为评论,它几乎无法阅读。
-
@MarkRansom: 或
latin-1(ISO 标准)或cp1252(Windows 修改为latin-1),如果它是西欧文本,或者utf-16,如果它是来自 Windows 程序的 Unicode 输出. -
CP-1252 中的 0x8e 是 Ž;我不希望在法语文本中出现这种情况。它在 ISO-8859-1 的 C1 控制代码范围内,所以这似乎也不正确。在 CP-863 中是 À,这可能更有可能。 @Kashyap 该文件中的第一个重音字母应该是什么样的?