URL エンコード / デコード

UTF-8 のパーセントエンコーディングで URL をエンコード・デコード。スペースは %20(RFC 3986)または +(フォーム形式)を選べます。

URL の構成

項目 / パラメータ 値(デコード済み) コピー

URL エンコードとは?

URL に使える文字は限られています。日本語、スペース、そして &、=、? のように URL の中で特別な意味を持つ記号は、URL パラメータに入れる前にエンコードする必要があります。URL エンコード(パーセントエンコーディング)は各文字を UTF-8 のバイトに変換し、% と 2 桁の 16 進数で表します。たとえば「中」は %E4%B8%AD になります。

使い方

  1. 「エンコード」または「デコード」を押して方向を選びます。選んだボタンが強調表示されます。
  2. 「入力」に入力します。「自動変換」がオンなら、入力を止めるとすぐに結果が表示されます。
  3. 「結果を入力に戻す」を押すと結果が左に移り、方向も反転します。

スペースは %20 と + のどちら?

例

a b&c=中文 をエンコードすると:

a%20b%26c%3D%E4%B8%AD%E6%96%87

JavaScript の encodeURIComponent との違いは?

結果はほぼ同じです。このツールは RFC 3986 に従い、!、'、(、)、* の 5 文字もエンコードし、英数字と -、_、.、~ だけを残します。そのほうが、さまざまなサーバーで問題が起きにくくなります。

エンコード範囲と URL の解析

よくある質問

URL 全体をエンコードできますか?

既定の「パラメータ値」で URL 全体をエンコードすると、://、?、& までエンコードされ、URL として使えなくなります。URL 全体を扱うときは「エンコード範囲」を「URL 全体」にしてください。URL の構造を保ったまま、URL に使えない文字だけがエンコードされます。単独の値には「パラメータ値」を使います。

デコードすると「有効な URL エンコード文字列ではありません」と表示されます

% の後には 16 進数(0–9、A–F)が 2 桁続く必要があります。100% のように単に % 記号を含むだけのテキストは、もともとエンコードされていないのでデコードは不要です。

%2520 はどういう意味?

2 回エンコードされています。% 自体がさらに %25 にエンコードされた状態です。もう一度デコードすると元に戻ります。