URL エンコード / デコード — クエリ文字列を安全に
テキストと %XX 形式の URL エンコード文字列を相互変換します。encodeURIComponent / encodeURI (decode 側も同様) を切替可能。UTF-8 ベースでブラウザ内処理。
使い方
モード (エンコード / デコード) と「対象範囲」(encodeURIComponent / encodeURI、あるいは decode 側) を選び、入力欄に文字列を貼り付け、「変換実行」を押します。クエリ値だけを扱うなら component 系、URL 全体の構造を保つなら uri 系を選びます。UTF-8 ベースなので日本語や絵文字も正しく往復します。サンプルボタンで動作確認、結果はコピー / .txt ダウンロード対応。
よくある質問
- 入力データはサーバーに送信されますか?
- いいえ。ブラウザ標準の encodeURIComponent / encodeURI / decodeURIComponent / decodeURI を使い、すべて端末内で完結します。
- encodeURIComponent と encodeURI はどう違う?
- encodeURIComponent は : / ? # & = + などの URL 予約文字もすべて %XX 化します。クエリ値や Path セグメントを個別にエンコードするとき用。encodeURI は URL 全体の構造を保ったまま、スペースや日本語などだけを %XX 化します。
- decodeURIComponent と decodeURI の違いは?
- decodeURIComponent は %XX 形式の予約文字 (: / ? # & = +) もすべて元に戻します。decodeURI は URI 構造を保つよう、これらの予約文字エスケープは復号しません。
- + をスペースとして扱いますか?
- いいえ。+ をスペースに変換するのは application/x-www-form-urlencoded の規約 (フォーム送信向け) で、URL 標準の percent-encoding とは別物です。
- 「URI malformed」エラーが出ます
- デコード時に壊れた %XX シーケンス (例: %ZZ や 不完全な %A) が含まれているとブラウザがエラーを返します。エンコード元の文字列が UTF-8 ベースかどうか確認してください。
- なぜ 1 ツールにまとめたの?
- URL のエンコードとデコードは同じ概念の往復で、モード切替で両方を 1 つの UI から扱えるようにしました。「対象範囲」の選択肢も両モードに対応します。
類似のツール
Base64 エンコード / デコード — URL-safe 対応
テキストと Base64 文字列を相互変換します。エンコード時は URL-safe オプション付き、デコード時は URL-safe 形式 (- _、パディングなし) も自動受付。UTF-8 安全、ブラウザ内処理。
URL パース — ホスト / パス / クエリ / fragment
URL をブラウザ標準の URL クラスで protocol / host / port / path / query / hash などに分解し、クエリパラメータも自動で表に展開します。値はパーセントデコード後で表示。各パーツのコピーや、結果全体の JSON ダウンロードに対応。すべてブラウザ内で処理し、URL は外部に送信されません。
Punycode 変換 — 国際化ドメイン名 (IDN) ⇄ xn--
日本語ドメインや絵文字ドメインなどの国際化ドメイン名 (IDN) と Punycode (xn-- 形式) を相互変換します。1 行 1 ドメインで複数まとめて変換可能。punycode.js でブラウザ内処理。
Base32 / Base58 エンコード・デコード
テキストを Base32 (RFC 4648 / TOTP 2FA シークレット) と Base58 (Bitcoin アドレス) で相互変換します。方式 (Base32 / Base58) と方向 (エンコード / デコード) を切り替え可能。UTF-8 バイト列ベースで日本語・絵文字も往復。すべてブラウザ内で処理されます。