0

「ef bb bf」で始まる UTF テキストがあります。このメッセージを人間が読めるテキストに変換するにはどうすればよいですか? vim、geditなどは、ファイルをプレーンテキストとして解釈し、いくつかのutfエンコーディングでファイルを強制的に読み取らせた場合でも、すべてのef-textを表示します。「再コード」ツールを試しましたが、機能しません。php の utf8_decode でさえ、期待されるテキスト出力を生成できませんでした。

このファイルを読めるように変換するにはどうすればよいですか?

4

2 に答える 2

1

ef bb bfUTF-8 BOMです。最初の 3 バイトを取り除きutf8_decode、残りを試します。

$text = "\xef\xbb\xbf....";
echo utf8_decode(substr($text, 3));
于 2011-06-25T19:12:24.957 に答える
-1

UFT8、UTF16、UTF32ですか?それはとても重要です!テキストを昔ながらの ASCII (すべての文字が 1 バイト長) に変換したいとします。

UTF8 は、標準の ASCII 文字に 1 バイトを使用し、特殊/多言語文字 (文字コード > 127) にのみ複数バイトを使用するため、既に (少なくともほとんど) 読み取り可能である必要があります。あなたのファイルは UTF8 ではないか、すでに読めるようです! オンライン コンテンツは通常 UTF-8 です。

Unicode 文字コードは、127 までの古い ASCII コードと同じです。

UTF16 と UTF32 は、文字を 1 バイトで表現できるかどうかにかかわらず、すべての文字をエンコードするために常にそれぞれ 2 バイトと 4 バイトを使用します。これにより、テキスト エディターが UTF8 を想定している場合、読み取り不能になります。

Gedit は UTF16 と UTF32 をサポートしていますが、開いているダイアログ ボックスでこれらのエンコーディングを明示的に「追加」する必要があります (自動検出を使用する代わりに明示的に選択することもできます)。

于 2011-06-25T19:12:20.760 に答える