Cookie の使用について.本サイトでは、基本機能の提供に必要な必須 Cookie を使用しています。さらに、同意いただいた場合に限り、アクセス解析 Cookie を利用して利用状況を把握し、サービス改善に役立てます。詳しくは .
このツールは使いやすかったですか?
フィードバックは改善に役立ちます
在线实现中文与UTF-8编码的互转,支持字符串与百分比编码格式的快速转换。
概要
解決できる課題、処理の仕組み、データの範囲を確認できます。
このページでは、入力したテキストをUTF-8で符号化し、各バイトを「\x」と2桁の16進数で連ねた文字列にします。反対に、その形式の16進数列をUTF-8のバイトとして読み、テキストへ戻せます。たとえば「中」はUTF-8の3バイト E4 B8 AD なので、表示は \xE4\xB8\xAD です。日本語、英数字、記号、絵文字などを同じ要領で扱えます。
UTF-8は文字を1〜4個のオクテット(8ビットのバイト)で表す可変長の符号化方式です。ここで見える「\xE4」はバイト値を示すためのテキスト上の書き方で、文字そのものでも、データを暗号化した結果でもありません。出力は区切りのないエスケープ表記であり、バイナリファイルやURLのパーセント符号化(%E4%..)とも異なります。UTF-8のバイト構造は RFC 3629、文字列をUTF-8バイトへ符号化する考え方は MDNのTextEncoder資料で確認できます。
入力欄は通常のテキスト用とUTF-8(16進数)用の2つです。「UTF-8へ変換」はテキストからエスケープ表記を作り、「テキストへ変換」は16進数列から文字列を復元します。中国語専用の変換ではなく、日本語を含むUnicodeテキストにも使えます。
使い方
手順に沿って操作し、例を使って入力と結果を確認します。
文字列から表記を作る場合は上側の「テキスト」欄へ入力します。逆変換では下側の「UTF-8 (16進数)」欄へ、たとえば \xE4\xB8\xad のような値を貼り付けます。サンプル表示を使って形式を確かめることもできます。
テキスト欄の内容をバイト表記にするには「UTF-8へ変換」、表記を文字へ戻すには「テキストへ変換」を押します。変換結果は反対側の欄に表示され、欄のコピー操作で取り出せます。
テキスト「こんにちは」は \xE3\x81\x93\xE3\x82\x93\xE3\x81\xAB\xE3\x81\xA1\xE3\x81\xAF のように、バイトごとの表記になります。必要な相手側の仕様が \xHH 形式か、単なる16進数や別のエスケープ形式かを確認してから貼り付けてください。
活用例
仕事や日常の流れの中での活用方法を紹介します。
ログ中に見えるエスケープ表記を読みやすい文字列へ戻したいとき、連続した16進数を入力して結果を確認できます。反対に、特定の日本語や記号がどのUTF-8バイト値になるかを文字列から調べられます。
説明文やテストデータの一部としてUTF-8バイトをエスケープ形式で記したい場合に、変換結果をコピーして下書きに使えます。出力が対象言語や設定ファイルの構文でそのまま有効かは、利用先の仕様も確認してください。
同じ文字列を変換して、ASCII文字と日本語、絵文字で表記の長さがどう変わるかを確認できます。これはバイト列の見方を調べる補助であり、別の文字コードとの変換や文字化けの修復を行うものではありません。
Q&A
よくある疑問や迷いやすい点をまとめて確認できます。
UTF-8の3バイト E4、B8、AD をそれぞれ16進数で表したものです。この並びをUTF-8として復号すると「中」になります。「\x」はバイト値を示す表示上の接頭辞です。
このページの出力は「\xHH」形式で、URLで使うパーセント符号化とは別形式です。URL用の値が必要なら、受け取り側が要求する符号化方式に対応した処理を使ってください。
いいえ。入力した文字をUTF-8バイト表記へ変換するか、UTF-8バイト表記を文字へ戻す機能です。元データがShift_JISなど別の文字コードの場合に、その文字コードを判定・変換する機能ではありません。
はい。テキストをUTF-8のバイト列にして各バイトを表示するため、ASCII以外の日本語や絵文字も扱えます。絵文字のように複数バイトになる文字は、出力でも複数の「\xHH」が並びます。
注意
利用範囲、結果の制限、必要な注意点を事前に確認します。
逆変換では、各バイトを2桁の16進数で並べたUTF-8表記を入力してください。サンプルのように「\x」を各バイトにつけた形を使い、途中に空白やカンマを挟まないでください。別のプレフィックス(たとえば 0x)、URLの「%」表記、Unicodeコードポイントの「U+」表記は同じ形式ではありません。
復号結果を利用する前に、元のバイト列が意図したUTF-8か、表示した文字列が目的の内容と一致するかを確認してください。形式の異なるデータを無理に読み替えると、期待した文字にならないことがあります。UTF-8は符号化方式であって暗号化ではなく、内容を隠したりアクセスを保護したりしません。また、ファイル全体の文字コード変更、バイナリ変換、URL変換、文字化け修復には対応していません。
UTF-8での符号化と復号の概要は TextEncoderの資料および TextDecoderのdecode資料を参照できます。仕様上のバイト列の説明はRFC Editorの RFC 3629にあります。
関連
関連ツール、特集、利用可能なAPIを探せます。