URLエンコード・デコード

日本語や記号を含むURLを %E3%81%82 形式に変換(エンコード)したり、元に戻したり(デコード)できます。Shift_JIS・EUC-JP にも対応しています。

URLエンコードとは

URLには英数字と一部の記号しか使えません。そのため日本語やスペース、& = などの特殊な意味を持つ記号は、文字をバイト列に変換して % + 16進数2桁で表します。これを URLエンコード(パーセントエンコーディング) と呼びます。

元の文字UTF-8Shift_JISEUC-JP
あ%E3%81%82%82%A0%A4%A2
日本%E6%97%A5%E6%9C%AC%93%FA%96%7B%C6%FC%CB%DC
(スペース)%20 または +

使い方

  1. 入力欄に変換したい文字列またはURLを貼り付けます。
  2. 「エンコード」または「デコード」を押します(自動変換がオンなら入力と同時に変換されます)。
  3. 「結果をコピー」でクリップボードにコピーできます。

encodeURIComponent と encodeURI の違い

encodeURIComponent は / ? & = : # などの記号もエンコードします。クエリパラメータの値を1つずつ変換するときに使います。

encodeURI はURLの構造を表す記号を残し、日本語などだけをエンコードします。URL全体をまとめて変換したいときに便利です。

RFC 3986 厳密 は ! * ' ( ) も含め、非予約文字(英数字と - _ . ~)以外をすべてエンコードします。OAuth 署名など厳密さが求められる場面向けです。

文字化けしたURLを直すには

古いWebシステムや一部の掲示板・ECサイトでは、URLが UTF-8 ではなく Shift_JIS や EUC-JP でエンコードされていることがあります。デコード結果が「�」や意味不明な文字になる場合は、文字コードを切り替えてお試しください。

よくある質問

入力した内容はどこかに保存されますか?

いいえ。変換はすべてお使いのブラウザ内(JavaScript)で行われ、サーバーには一切送信されません。社内URLや個人情報を含む文字列でも安心してお使いいただけます。

スペースは %20 と + のどちらになりますか?

URLのパス部分では %20、HTMLフォームの送信データ(application/x-www-form-urlencoded)では + が使われます。「スペースを+にする」オプションで切り替えられます。デコード時は、オプションがオンなら + をスペースとして扱います。

二重にエンコードされたURLを戻すには?

%25E3%2581%2582 のように %25 が含まれている場合は二重エンコードです。デコード後に「結果を入力へ」を押して、もう一度デコードしてください。