-2
私はPythonでテキストファイルを読むと、奇妙な値を返します。python read text file奇妙な値を返します
は例えば、私は私のファイルにこのテキストを持っている:
a_id
Pythonは結果が読み:Pythonで
'ÿþa\x00_\x00i\x00d\x00'
私はPythonでテキストファイルを読むと、奇妙な値を返します。python read text file奇妙な値を返します
は例えば、私は私のファイルにこのテキストを持っている:
a_id
Pythonは結果が読み:Pythonで
'ÿþa\x00_\x00i\x00d\x00'
open
方法は、デフォルトでは何のエンコーディングを持っていません。
そう
(ファイル、モード= 'R'、バッファリング= -1、エンコーディング=なし、エラー=なし、 改行=なし、closefd =真、オープナー=なし)オープンこれは:
['þÿ\x00a\x00_\x00i\x00d']
はそれが適切なエンコードを追加する修正するには:
with open('test.txt') as f:
print(f.readlines())
になります、のような:
あなたを与えるだろうwith open('test.txt', encoding='utf-16') as f:
print(f.readlines())
:
['a_id']
あなたはBOM-UTF8エンコーディングでテキストファイルを作った...(私は...これだけだと思う)...でファイルを開きますあなたの好きな(良い)テキストエディタ(つまりnotepad ++)を普通のasciiまたは普通のutf8に変更してください... –
@JoranBeasleyそれはリトルエンディアンUTF-16 –
hehe私はそれが何かを知っていた:P –