AVQIS GUIDE

UTFとBase64の違いと、目的に合ったツールの選び方

文字コードの値を調べる場合と、テキストをBase64にする場合の違いを、日本語や絵文字の具体例で解説します。

このガイドで分かること

文字の値を調べたい場合と、データを別の文字列で表したい場合では、使うツールが異なります。「日本語を変換する」という言葉だけでは選びにくいため、まずUTFとBase64が何を表すのかを分けて考えます。

文字・コードポイント・文字コード・Base64の違い

言葉この例での意味
文字画面に見える「あ」などの表現。見た目の1文字が、必ず1つのコードポイントとは限りません。
コードポイントUnicodeで割り当てられた値。「あ」はU+3042です。
UTF-8・UTF-16・UTF-32Unicodeの値を、バイトやコードユニットで表す方式です。同じ文字でも表現される値や長さが異なります。
Base64バイト列を一定の文字の組み合わせで表す方式です。文字コードでも暗号化でもありません。

AVQISのBase64ツールでは、入力テキストをUTF-8のバイト列にしてからBase64へ変換します。そのためUTFとBase64は競合する方式ではなく、同じ処理の別の段階として使われます。

「Aあ😀」のコード値を確認する

  1. UTF-8 / UTF-16 / UTF-32変換を開きます。
  2. 空白なしでAあ😀を入力し、「コード値を表示」を押します。
  3. 結果を次の例と比較します。数値はいずれも16進数です。
A | UTF-8: 41 | UTF-16: 0041 | UTF-32: 00000041
あ | UTF-8: E3 81 82 | UTF-16: 3042 | UTF-32: 00003042
😀 | UTF-8: F0 9F 98 80 | UTF-16: D83D DE00 | UTF-32: 0001F600

UTF-8の欄は1バイトずつ、UTF-16の欄は16ビットのコードユニットごとに表示しています。😀はUTF-16では2つのコードユニットで表されます。UTF-32の欄はコードポイントを8桁の16進数で表示したもので、ファイルに書き出したバイト順を示すものではありません。

「あ」をBase64へ変換して戻す

  1. Base64変換へあだけを入力し、「Base64へ変換」を押します。
  2. 結果は44GCです。「あ」のUTF-8バイト列E3 81 82をBase64で表しています。
  3. 入力欄を44GCに置き換え、「テキストへ復元」を押すとあに戻ります。

入力に改行や空白を加えると、変換するバイト列も変わります。例と比較するときは、それらを含めずに入力してください。

目的に合うツールを選ぶときの注意

関連サービス