十六進数のバイトは、Unicodeのコードポイントではない
十六進数は、バイトをコンパクトに表示する方法です。十六進数の二桁が、00からFFまでの一バイトを表します。ふつうの英字は、UTF-8では一バイトを占めることが多いため、短い例では、文字ごとに置き換えているように見えます。この近道は、人々が実際に書くテキストの多くでは通用しません。アクセント付きの文字は二バイト、絵文字は四バイトを占めるか、さらに長い並びになることがあります。
コードポイントU+00E9は、文字éを表します。そのUTF-8のバイトはE9ではなく、C3 A9です。そのため、単独のバイトE9を厳密なUTF-8デコーダーに渡すとエラーになります。十六進数自体が有効であってもです。ログが従来のエンコードで作成された場合は、出力がそれらしく見えるまで試行錯誤するのではなく、元の場所でそのエンコードを確認してください。
この変換ツールは、文字のデコードを試みる前に、十六進数の構文を確認します。4869のようなコンパクトな連続は受け付けられます。48 69、48:69、0x48,0x69のような完全なグループも同様です。グループ内の桁数が奇数の場合は拒否されます。アドレス列、プログラミング言語のエスケープされた文字列、完全なhexdumpの表示可能文字の列は、このパーサーの対象外です。バイトのデータだけを貼り付けてください。
数値の作業とテキストの作業は、分けて扱ってください。十六進数のFFは整数255を表しますが、単独のUTF-8のテキストバイトとしては有効ではありません。その値を計算するには、基数変換ツールを使い、バイトがメッセージをエンコードしている場合は、このツールを使用します。成功したテキストは、既存の文書ツールに引き継げます。NULL文字はダウンロードには残りますが、文書への引き継ぎでは拒否されます。