URLエンコーダー&デコーダー
下の欄にURLまたは文字列を貼り付け、モードを選んでエンコードまたはデコードします。すべてブラウザ内で完結 — データが端末の外に出ることはありません。
URL エンコードを一行で:URL で許可されない文字を %XX という 16 進数形式に変換します——スペースは %20 に、& は %26 になります——これにより URL やクエリ文字列、パラメータが曖昧さなく送信されます。
✅ クイック回答
"a b" → a%20b。"a&b=c" → a%26b%3Dc。"中文" → %E4%B8%AD%E6%96%87。"😀" → %F0%9F%98%80。
経験則:パラメータ値には厳密モード(encodeURIComponent)を、全体の URL には標準モード(encodeURI)を使います。一度だけエンコードしてください——二重エンコードは避けてください。安全な文字(A–Z a–z 0–9 - _ . ! ~ * ' ( ))はそのまま維持されます。
よくある質問
URLエンコードとは?
URLエンコード(パーセントエンコード)は、URLに使用できない文字を安全な %XX 形式に変換します。例えばスペースは %20、クエリ文字列の & は %26 になり、URLを曖昧さなく送信できます。
2つのエンコードモードの違いは?
厳密モード(encodeURIComponent)は / や : を含むほぼすべてをエンコードし、クエリパラメータ値に最適です。標準モード(encodeURI)は /、:、?、& などのURL構造文字を保持し、完全なURL文字列のエンコードに向いています。
機密データをURLエンコーダーで扱っても安全ですか?
はい。すべてのエンコードとデコードはブラウザ内で行われます。データがサーバーに送信されることはありません。
いつURLエンコードが必要ですか?
ユーザー入力を含むURLを構築するとき、クエリ文字列でパラメータを渡すとき、URLの中に別のURLを埋め込むときです。エンコードにより、特殊文字によるリンク切れ、パラメータの破損、セキュリティ問題を防げます。
URLエンコーダーは無料ですか?
はい、完全無料です。登録不要、利用制限なし、アップロードなし。すべてブラウザ内で完結します。
%20 と + の違いは何ですか?
%20 は任意の URL コンポーネントにおけるスペースの標準的なパーセントエンコードです。+ は application/x-www-form-urlencoded フォーム本体(および一部のクエリパーサ)内でのみ「スペース」を意味します。パスセグメントでは + はそのままのプラス記号——そのため安全のために %20 を使うことをお勧めします。
なぜ URL が二重エンコードされるのですか?
すでにエンコードされた文字列を再度エンコードすると二重エンコードが発生します:% 自体が %25 にエンコードされるため、%20 は %2520 になります。まずデコードし、その後一度だけエンコードする——あるいは未エンコードの生の値だけをエンコードしてください。
encodeURI と encodeURIComponent、どちらを使うべき?
単一のパラメータ値にはencodeURIComponentを使ってください——/ : ? & = # をエンコードするため、値が自らの枠から抜け出すことがありません。構造を維持したい完全な URL にはencodeURIを使ってください——/ : ? & = をそのまま残します。
URL エンコードは XSS を防ぎますか?
いいえ。URL エンコードは転送時の安全性のためのものであり、出力のサニタイズではありません。<script> を %3Cscript%3E としてエンコードしても、デコードされた値がその後適切にエスケープされずに HTML に挿入された場合は実行を防げません。レンダリング時には常にコンテキストに応じた出力エンコード(HTML、属性、JS)を適用してください。
中国語のテキストはエンコードするとなぜ長くなるのですか?
中国語の文字は UTF-8 で 3 バイトであり、各バイトが 3 文字の %XX エスケープになるため、1 文字が最大 9 文字に拡張されます。これが CJK テキストを含む URL が非常に長くなる理由であり、slug に音訳や ID が使われる理由です。
URLエンコーダー&デコーダー — 特殊文字を正しく処理
URL内の特殊文字は、リンク切れ、パラメータの切り詰め、予期しないエラーを引き起こします。URLエンコーダーは任意のテキストをパーセントエンコード形式に変換し、デコーダーはそれを復元します — 開発者、マーケター、手動でリンクを作成するすべての人に最適です。
このURLエンコーダーを使う理由
- ワンクリックでエンコードまたはデコード、即座に反映。
- クエリパラメータ値やネストデータ用の厳密モード。
- 完全なURLの構造を保持する標準モード。
- スペース、中国語、絵文字などUnicodeを正しく処理。
- 100%プライベート&無料 — アップロードは一切なし。
一般的な使用例
- ユーザー提供の値を使ってクエリ文字列を安全に構築。
- ネットワークリクエストのエンコード済みパラメータをデバッグ。
- 別のURLの中にURLを埋め込む(リダイレクト、コールバック)。
- フォーム送信やAPI呼び出し用に値を準備。
URL エンコード早見表
| 文字 | エンコード後 | 文脈 |
|---|---|---|
| space | %20 | すべての場所(フォーム本体では + のみ使用) |
| & | %26 | クエリ値 |
| = | %3D | クエリ値 |
| ? | %3F | パラメータ値 |
| / | %2F | パラメータ値の内部 |
| # | %23 | パラメータ値の内部 |
| 中 | %E4%B8%AD | UTF-8、3 バイト → 9 文字 |
| 😀 | %F0%9F%98%80 | UTF-8、4 バイト → 12 文字 |
安全な文字(A–Z a–z 0–9 - _ . ! ~ * ' ( ) および予約文字 / : ? & = #)は、encodeURI と encodeURIComponent で異なる扱いを受けます。
手動でリンクを構築する場合も、APIリクエストをデバッグする場合も、フォーム用のデータを準備する場合も、URLエンコーダー&デコーダーが即座に正しい結果を返します — 無料、プライベート、制限なし。
エンコードされた URL を扱っていますか?このツールを Base64 エンコーダ(トークンのデコード用)、JSON フォーマッタ(API レスポンスの検証用)、そして URL に認証情報を埋め込む前の パスワード生成器 と組み合わせてください。