このツールの動作
テキストを UTF-8 として符号化し、得られた各バイトを小文字の16進数で、空白区切りで出力します。
区切るのは意図した設計です。数字が連なると読みにくく、数え間違えやすい一方で、16進数を眺める目的はまさに数えることだからです。
文字ではなくバイト
ここが驚かれる部分であり、このツールが役立つ理由でもあります。
hi → 68 69 2バイト、2文字
café → 63 61 66 c3 a9 5バイト、4文字
😀 → f0 9f 98 80 4バイト、1文字
UTF-8 は可変長です。ASCII の文字は1バイト、アクセント付きのラテン文字は2バイト、多くの CJK 文字は3バイト、絵文字は4バイトを要します。データベースの列、プロトコルの欄、ファイル形式が n バイトまでと定めているなら、意味を持つのはこちらの数であって、エディタが表示する数ではありません。
見えるようになるもの
描画されないものすべてです。末尾の改行は 0a。Windows の改行は 0d 0a で、1バイトのつもりが2バイトです。見た目が空白と区別できないノーブレークスペースは c2 a0。ファイル先頭のバイト順マークは ef bb bf。
これらはどれも、どこかで比較や解析やインポートを壊したことがあり、そしてどれもテキスト欄には映りません。
16進数から読み戻す
逆方向は空白と大文字を受け付けます。16進ダンプ、デバッガ、ログの出力をそのまま貼り付けられ、事前に整える必要はありません。
桁数が奇数の場合は、推測せずにエラーとします。1バイトは2桁であり、どちら側が欠けたのかを知る手立てがないからです。
プライバシー
すべての処理はブラウザ内のJavaScriptだけで完結します。データがアップロードされることはないため、機密情報でも安心して利用でき、オフラインでも動作します。