一直用python讀文件都是文本文件。用的方法是:
但是前兩天讀一個幾百兆的大文件的時候,遇到了奇怪的問題,覺得是內容沒有讀完。定位最後讀到的行,用emeditor打開,發現有一個怪字符“”。編碼是“\x001a”,一查,原來是文件結束符號。
一直鬱悶,奇怪爲啥文本文件裏面有文件結束符,試了好多辦法,都不行,最後經limodou指點,原來這種情況要當成二進制文件來讀。
文件內容如下:
兩種不同情況的結果如下:
>>> f.read()
'abc'
>>> f=open('ft.txt','rb')
>>> f.read()
'abc\x1adefg'