URL エンコード / デコードツール
URL には使える文字が限られており、空白・日本語・&・? などをそのまま入れるとエラーになります。URL エンコードはこれらを %XX 形式に変換し、URL が正しく送信・解析されるようにします。このツールはエンコードとデコードをワンクリックで切り替えられます。
使い方
- エンコード:特殊文字を含むテキストやパラメータを貼り付けて「エンコード」。
- デコード:%XX 形式の文字列を貼り付けて「デコード」で復元。
- 単一パラメータではなく URL 全体をエンコードする場合はオプションで encodeURI に切り替えます。
主な用途
- 日本語や特殊文字を含むクエリ文字列を組み立てる。
- アドレスバーからコピーしたエンコード済み URL を解読する。
- API リクエストのパラメータのエンコードをデバッグする。
丸ごとではなく「値」だけをエンコードする
よくある使い方は二つあります。空白や日本語、&・? を含むクエリパラメータ(検索語や API の引数など)をURLに埋め込む場合と、ログに出てきた長い %E4%B8%AD… を読める文字に戻す場合です。ここで一番はまりやすいのが範囲の取り違えで、エンコードすべきは各パラメータの「値」だけで、URL全体ではありません。
- URLを丸ごと変換すると、://・?・= まで変換されてリンクが壊れます。
- すでにエンコード済みの文字列を再度変換すると二重エンコードになり、% が %25 に化けて、受け取った側で文字化けします。
値ごとに個別にエンコードし、そのあと & と = でURLを組み立て直すのが正解です。
どの文字が置き換えられ、どの文字はそのままか
このページの実際の出力が境界を最もよく示します。hello world → hello%20world、a+b=c → a%2Bb%3Dc、100% → 100%25、?q=x&r=y → %3Fq%3Dx%26r%3Dy。しかし ~_.- はそのまま返ります。この 4 つは非予約文字で、正しいエンコーダーは触ってはいけません。プラス記号自体が %2B になる点にも注意してください。そのまま残せば、+ を空白として読むデコーダーが値を黙って壊します。