URLエンコード・デコードの使い方
- 変換の方向を選びます。文字化けしたURLを読みたいときは「デコード」、URLに入れる文字を変換したいときは「エンコード」です。
- 入力欄にURLや文字列を貼り付けると、すぐに結果が表示されます。
- エンコードするときは、検索語やパラメータの値ひとつだけなら「値ひとつ」、URL全体なら「URL全体」を選びます。
- 下のURL構造の解析にURLを入力すると、ドメイン・パス・パラメータを表にまとめて表示します。
URLエンコード(パーセントエンコーディング)とは?
インターネットのアドレス(URL)に使えるのは、半角英数字と一部の記号だけです。日本語や空白、& などの記号は、まずUTF-8のバイト列に変換し、各バイトを「%」と2桁の16進数で表します。これがURLエンコード(パーセントエンコーディング)です。
| 元の文字 | エンコード結果 |
|---|---|
| 空白 | %20(クエリでは + も使われます) |
| & | %26 |
| あ | %E3%81%82(UTF-8で3バイト) |
| 日 | %E6%97%A5 |
ひらがな・カタカナ・漢字はほとんどがUTF-8で3バイトになるため、1文字が「%XX」3つ(9文字)に増えます。日本語を含むURLをコピーして貼り付けると、長くて読めない文字列になるのはこのためです。
encodeURIComponentとencodeURIの違い
encodeURIComponentは、/ ? & = # のようなURL構造の記号もすべてエンコードします。検索語などパラメータの値ひとつを入れるときはこちらを使います。値の中の & が次のパラメータの区切りと誤解されるのを防げます。
encodeURIは、URL構造の記号はそのまま残し、日本語や空白などだけをエンコードします。完成したURL全体を安全な形にしたいときに使います。
- 値ひとつ:
a&b→a%26b - URL全体:
https://a.com/?q=日→https://a.com/?q=%E6%97%A5
日本語URLが文字化けして見えるときの対処法
ブラウザのアドレスバーでは日本語で表示されていたURLが、LINEやメール、ドキュメントに貼り付けると「%」だらけの文字列に変わることがよくあります。URL自体が壊れているわけではなく、そのままクリックしても開けます。中身を読みたいときだけ、このツールでデコードしてください。
デコード結果に「�」のような文字化けが出る場合は、UTF-8ではなくShift_JISやEUC-JPでエンコードされた古いサイトのURLである可能性があります。また、% の一部が途中で切れている場合、このツールはデコードできる部分だけを戻し、残りはそのままにしてお知らせします。
よくある利用シーン
- アクセス解析やログに残った検索キーワード・URLを読める形にする
- Wikipediaなど日本語のページURLを共有用に確認する
- APIやWebアプリのテストで、日本語を含むパラメータを手早く作る
- 広告のトラッキングURL(utm_source など)に含まれるパラメータを表で確認する
変換と解析はすべてブラウザ内で行われるため、社内URLなどを扱う場合も安心して使えます。