在Python中读取文件时出现UnicodeDecodeError错误,如何忽略该错误并跳到下一行?
- 论坛
- 在Python中读取文件时出现UnicodeDecodeError错误,如何忽略该错误并跳到下一行?
15 浏览
在Python中读取文件时出现UnicodeDecodeError错误,如何忽略该错误并跳到下一行?
我需要将一个文本文件读入Python。文件编码是:
file -bi test.csv text/plain; charset=us-ascii
这是一个第三方文件,我每天都会得到一个新的文件,所以我宁愿不对它进行更改。该文件包含非ASCII字符,比如Ö。我需要使用Python读取这些行,并且我可以忽略包含非ASCII字符的行。
我的问题是,当我在Python中读取文件时,当遇到包含非ASCII字符的行时,我会遇到UnicodeDecodeError错误,无法读取文件的其余部分。
有没有办法避免这个问题。如果我尝试这样做:
fileHandle = codecs.open("test.csv", encoding='utf-8'); try: for line in companiesFile: print(line, end=""); except UnicodeDecodeError: pass;
然后当错误发生时,for循环结束,我无法读取文件的剩余部分。我想跳过导致错误的行并继续进行。如果可能的话,我宁愿不对输入文件进行任何更改。
有没有办法做到这一点?
非常感谢。