我正在尝试在编辑器(VIM)中打开的文件的内容。
身份证:
fileh = open( path, 'r' )
content = fileh.read()
fileh.close()
当文件在 VIM 中打开时,这会导致错误。如果 VIM 对文件持有排他锁,我可以理解这一点,但根据错误消息,情况似乎并非如此:
UnicodeDecodeError: 'ascii' codec can't decode byte 0x80 in position 16: ordinal not in range(128)
在我看来,VIM 在打开的文件中写入了一个非 ascii 字符!
使用或 utf-16 打开文件open( path, 'r', encoding='utf-8')
似乎不起作用(发生 utf-8/utf-16 解码错误)。
任何帮助表示赞赏!
更新:当我在 Gedit 而不是 VIM 中打开文件时,不会发生此问题。当然这不是一个修复,所以我仍然需要找出问题所在。