変換前
変換後

パーセントエンコードは、URL の中で特別な意味を持つ文字や、そもそも URL に書けない文字を「%」+16進のバイト値に置き換える仕組みです。クエリ文字列にスペースや日本語、あるいはそのままではパラメータが分かれてしまう & のような記号を含めるときに必要になります。

使い方

  1. URL に入れたい値を貼り付けます。
  2. 非予約文字以外が、UTF-8 のバイト単位でパーセントエンコードされます。
  3. 結果をコピーしてクエリ文字列やパスに貼り付けます。

よくある質問

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

%20 です。+ になるのは application/x-www-form-urlencoded のフォーム本文の場合だけで、URL 一般には当てはまりません。

変換されない文字は?

非予約文字である A〜Z、a〜z、0〜9 と - _ . ~ 、および実用上そのままで安全な ! * ' ( ) です。それ以外はすべてエンコードされます。

日本語1文字が9文字になるのはなぜ?

エンコードは UTF-8 のバイト単位で行われ、日本語の多くは3バイトなので、1文字が %XX 3つ分になります。