我试图用python打开一个txt
文件,并使用open()
和read()
读取它,问题是某些文本不是UTF-8。这是错误:
UnicodeDecodeError:“ charmap”编解码器无法解码位置的字节0x8f 1911885:字符映射到
如何阅读本文档?
答案 0 :(得分:0)
您可能想检查该问题的所有答案,因为它看起来与您的答案非常相似:UnicodeDecodeError: 'charmap' codec can't decode byte X in position Y: character maps to <undefined>
如该网站所述,请尝试:
file = open(filename, encoding="utf8")
正打算将其作为评论分享,但我对此没有足够的声誉:)
编辑:阅读您的评论作为对我之前的回答并由塞特(Cett)建议对其进行改进后:
处理编码错误的最佳方法可能是使用errors参数。如您的问题所述,如果仅某些字符未解码,则可以使用。
file = open(filename, encoding="utf8", errors = "ignore")
注意:使用此参数将导致Python忽略该特殊字符。因此,仅在丢失一些数据的情况下,我才建议这样做。