现有需求如下:
遍历一个文件夹中的所有文件,读取文件内容,对文件内容进行处理后,重新写入文件中。
该文件夹下的文件编码方式不统一,例如下图所示:
图中,两个文件的编码,一个是ASCII
,另一个是ISO-8859
,且换行符还是CRLF风格的(该文件中包含了中文注释)
我尝试直接用utf-8编码方式读取文件:with open(file, encoding='utf-8') as f
,当读到那个272的file时,会报错:UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbc in position 0: invalid start byte
也试过这样:with codecs.open(file, encoding='utf-8') as f
,但是仍然会报错。
请问有何好的处理办法?
二进制读取字节,然后根据不同的编码再处理