2
ノートパッドにemダッシュだけのファイルを作成し、このファイルをUnicode (big endian)
エンコーディングで保存しました。メモ帳では、emダッシュが表示されます。私は、ファイルを開くとPython 3でこのようにそれを読んで/ IDLE:バイトオーダーのマーク付きのUTF-16ビッグエンディアンエンコーディング
open(file_path, encoding="UTF-16-BE").read()
私はこれを取得:
b'\xfe\xff \x14'
:バイトとして表さ
'\ufeff—'
、ファイルの内容は、このです
BOMを処理して表示しないでください。私はPythonの利用可能なエンコーディングを見て、UTF_8_SIG
のようにそこにはUTF_16_BE_SIG
のようなものはありませんでした。ここで何が起こっているのですか?それをどうやって適切に処理しますか?
可能な重複:http://stackoverflow.com/questions/8827419/converting-utf-16-utf-8- and-remove-bom –
@Robᵩ - 私はあなたの答えがリンクされた答えよりも好きなので、私はdupに投票しません。 – tdelaney