URLエンコード・デコードツール
URLエンコード・デコードを簡単に実行。日本語や特殊文字を含むURLを安全に変換できます。
このツールでできること
URLエンコード・デコードツールは、日本語や特殊文字を含むURLを安全なパーセントエンコーディング形式(%XX)に変換、またはその逆変換を行うブラウザ完結型ツールです。API開発のデバッグ、検索クエリの作成、日本語URLの共有に最適です。RFC 3986に準拠したUTF-8エンコーディングを採用しています。
- ✅ エンコード: 「検索」→「%E6%A4%9C%E7%B4%A2」のように日本語や記号を変換
- ✅ デコード: パーセントエンコーディングを元の文字列に復元
- ✅ RFC 3986準拠: URL標準規格に準拠した正確な変換
🔤 URLエンコード
🔓 URLデコード
💼 こんな時に便利
- API開発・デバッグに - URLパラメータに日本語や記号を含む場合に正しくエンコード
- URLの共有時に - 日本語URLを英数字に変換して安全に送信
- クエリパラメータの作成に - 検索キーワードなどをURL形式に変換
- ブラウザのアドレスバー解析に - エンコードされたURLを読みやすく変換
- Web開発の学習に - URLエンコードの仕組みを理解するのに最適
使い方
📌 基本的な使い方
エンコードまたはデコードしたい文字列を入力し、対応するボタンをクリックするだけで変換が実行されます。
💡 URLエンコードとは
URLエンコード(パーセントエンコーディング)は、URLに使用できない文字や予約文字を安全な形式に変換する方法です。日本語などのマルチバイト文字や特殊文字をURLで使用する際に必要になります。
⚙️ 変換例
- 日本語: 「検索」 → 「%E6%A4%9C%E7%B4%A2」
- スペース: 「hello world」 → 「hello%20world」
- 記号: 「?&=」 → 「%3F%26%3D」
🔍 よくある使用例
- 検索パラメータ: 検索クエリに日本語を含める場合
- API呼び出し: URLパラメータに特殊文字を含める場合
- リンク共有: 日本語を含むURLを共有する場合
- デバッグ: エンコードされたURLの内容を確認する場合
📝 注意事項
- URLエンコードはUTF-8文字セットを使用します
- すでにエンコードされた文字列を再度エンコードしないよう注意してください(二重エンコード)
- URL全体をエンコードするのではなく、必要な部分のみをエンコードしてください
💼 活用シーン
- Web APIのクエリパラメータ作成
- フォームデータのURL送信
- エンコードされたURLの解読
- 日本語URLの変換
- 開発・デバッグ作業
📚 URLエンコードの技術解説
📖 RFC 3986とは - URL標準規格の基礎
RFC 3986(Uniform Resource Identifier: Generic Syntax)は、URLやURIの構文を定義するIETF(Internet Engineering Task Force)の公式標準規格です。1998年のRFC 2396を改訂し、2005年に発行されました。
🔹 RFC 3986で定められた予約文字(Reserved Characters)
以下の文字はURLで特別な意味を持つため、データとして使う場合はエンコードが必要です:
:スキームとホストの区切り(例:https://)/パスの区切り(例:/tools/url-encoder/)?クエリ文字列の開始(例:?q=検索)#フラグメント識別子の開始(例:#section)[ ] @ ! $ & ' ( ) * + , ; =サブコンポーネントの区切り文字
🔹 非予約文字(Unreserved Characters)
以下の文字はエンコード不要でそのまま使用できます:
- 英数字:
A-Z a-z 0-9 - 記号:
- _ . ~(ハイフン、アンダースコア、ピリオド、チルダ)
💡 このツールは、RFC 3986に準拠したエンコード・デコードを実行します。予約文字をデータとして使う場合は、自動的にパーセントエンコーディングに変換されます。
🔧 パーセントエンコーディングの仕組み
パーセントエンコーディング(Percent-Encoding)は、URLで使用できない文字をASCIIコードの16進数表現に変換する手法です。変換は以下の手順で行われます:
📌 エンコードの手順(例:「検索」)
- UTF-8バイト列に変換
- 「検」→ UTF-8:
E6 A4 9C(3バイト) - 「索」→ UTF-8:
E7 B4 A2(3バイト)
- 「検」→ UTF-8:
- 各バイトをパーセント記号 + 16進数に変換
E6→%E6A4→%A49C→%9CE7→%E7B4→%B4A2→%A2
- 結果: 「検索」 →
%E6%A4%9C%E7%B4%A2
📌 デコードの手順(逆変換)
- パーセント記号の後ろの16進数をバイト値に変換
- バイト列をUTF-8として解釈し、元の文字列に復元
⚠️ 注意: エンコード済みの文字列を再度エンコードすると「二重エンコード」になり、正しくデコードできなくなります。例: %E6%A4%9C を再エンコード → %25E6%25A4%259C(%が%25になる)
🔤 文字エンコーディングと文字化け対策
URLエンコードで最も重要なのは、文字エンコーディング(Character Encoding)の統一です。文字化け(Mojibake)は、エンコード時とデコード時で異なる文字エンコーディングを使用した場合に発生します。
🌐 主な文字エンコーディング
| エンコーディング | 説明 | URLエンコーディング |
|---|---|---|
| UTF-8 | 現在のWeb標準。1〜4バイトで全Unicode文字を表現 | ✅ 推奨(このツールで使用) |
| Shift_JIS | 日本語の古い文字コード。1〜2バイト | ⚠️ 非推奨(互換性問題あり) |
| EUC-JP | UNIXで使われた日本語コード | ⚠️ 非推奨(現在は希少) |
| ISO-8859-1 | 西欧言語向け。日本語非対応 | ❌ 日本語で使用不可 |
🛡️ 文字化けを防ぐベストプラクティス
- UTF-8で統一: HTMLの
<meta charset="UTF-8">とサーバー設定(Content-Type)を一致させる - URLエンコードはUTF-8を使用: このツールを含む現代のURLエンコーダーはすべてUTF-8を採用
- 二重エンコードを避ける: JavaScriptの
encodeURIComponent()を複数回呼び出さない - デコード時も同じ文字コードを使用: UTF-8でエンコードしたURLは必ずUTF-8でデコードする
📌 このツールは常にUTF-8を使用するため、現代のWebアプリケーション・APIと100%互換性があります。古いShift_JISベースのシステムとやり取りする場合のみ、サーバー側で文字コード変換が必要になります。
📅 最終更新: 2025年12月9日 | 💬 フィードバック: ご意見・ご要望