ツール
JA

文字列(テキスト)を16進数に変換

テキストを入力または貼り付けると、そのバイト列が16進数で表示されます。文字コード、大文字・小文字、区切り文字を選べるので、シンプルな48656C6C6Fから、C言語形式の0x48, 0x65や\x48\x65のエスケープ表記まで出力できます。

プライバシー保護:データはお使いのブラウザ内で処理され、アップロードされることはありません。

文字列→16進数変換ツールの使い方

  1. テキストを入力するか、貼り付けます。日本語を含むあらゆる言語の文字や絵文字に対応しています。
  2. 文字コード(標準はUTF-8)、大文字・小文字、バイトの区切り方を選びます。16バイトごとに改行にチェックを入れると、16進ダンプのような表示になります。
  3. 16進数の文字列をコピーするか、テキストファイルとしてダウンロードします。

文字列を16進数に変換する仕組み

コンピューターはテキストをバイトとして保存しています。このツールは、選択した文字コードで各文字のバイト値を調べ、2桁の16進数で書き出します。ASCIIとUTF-8ではAは65 = 41、aは97 = 61、スペースは32 = 20なので、「Hi!」は48 69 21になります。

文字10進数16進数
A … Z65 … 9041 … 5A
a … z97 … 12261 … 7A
0 … 948 … 5730 … 39
スペース3220
!3321
改行100A

UTF-8・Latin-1・UTF-16の比較

同じ文字でも、文字コードによって異なるバイト列になります。Web、JSON、大半のファイルにはUTF-8が適しています。ほかの文字コードは、受け取る側のシステムが必要とする場合にだけ使いましょう。

テキストUTF-8Windows-1252UTF-16 LE
A414141 00
éC3 A9E9E9 00
€E2 82 AC80AC 20
😀F0 9F 98 80表現不可3D D8 00 DE

プログラムで文字列を16進数に変換する

よくある質問

「文字列→16進数」と「ASCII→16進数」は同じですか?

英字・数字・記号であれば同じで、ASCIIとUTF-8は同じバイト列になります。é、ß、Ж、中といった文字(日本語のかなや漢字を含む)や絵文字はASCIIに含まれず、UTF-8ではそれぞれ2~4バイトで表されます。

1文字が複数の16進数バイトになるのはなぜですか?

UTF-8で1バイトになるのはASCII文字だけです。éはC3 A9、€はE2 82 ACになり、ほとんどの絵文字は4バイトです(日本語のかなや漢字は通常3バイト)。送信先のシステムがUTF-16やLatin-1を必要とする場合は、その文字コードを選んでください。

どの区切り文字を使えばよいですか?

ハッシュ値やコンパクトな文字列には区切りなし、読みやすい16進ダンプにはスペース、MACアドレスや証明書のフィンガープリントにはコロン、C・C#・Javaの配列には0x48, 0x65、C・Python・シェルスクリプトの文字列リテラルには\x48が適しています。

16進数をテキストに戻すには?

入れ替えボタンを押します。16進数が入力欄に移り、同じ文字コードでデコードされます。デコーダーは、ここで選べるすべての区切り文字に対応しています。