URLエンコード・デコード
テキストをURLエンコードする、またはURLエンコードされた文字列を元のテキストにデコードできるツールです。日本語もUTF-8で変換できます。
ツール
0文字
モード
形式
クエリの値やパスの一部など、URLの一部分をURLエンコードするときに使います(JavaScript の encodeURIComponent と同じ)。
仕様
本ツールの仕様は以下の通りです:
- 対応形式: URLエンコード(パーセントエンコーディング)
- 文字コード: UTF-8(日本語や絵文字を含むテキストに対応)
- 入力文字数制限: 100,000文字まで(絵文字などは2文字分として数えます)。超えた場合は変換しません
- 出力形式: テキスト
- 自動変換: 入力、モード、形式、「+ を空白として扱う」を変えると、ボタンを押さずに結果を更新します。入力の途中で変換できない場合(「%E3%81」のような途中の並びなど)は、入力が止まってから約0.6秒後にエラーを表示します(空欄のときはエラーにしません)
- エンコード: 入力したテキストをUTF-8のバイト列として「%E3%81%82」のような形式にURLエンコード(16進数は大文字)。「形式」で変換の仕方を選択
- 標準(%20): 英数字と「-」「_」「.」「!」「~」「*」「'」「(」「)」以外の文字をURLエンコード。スペースは「%20」。クエリの値やパスの一部に使う基本の形式(既定)
- RFC 3986: 標準に加えて「!」「'」「(」「)」「*」も「%21」「%27」「%28」「%29」「%2A」に変換。PHPのrawurlencodeと同じ結果。厳密にURLエンコードしたいときに使う
- フォーム(+): スペースを「%20」ではなく「+」に変換し、「!」「'」「(」「)」「~」も変換(「*」は変換しない)。フォーム送信(application/x-www-form-urlencoded)の形式
- URL全体(記号を残す): 「;」「,」「/」「?」「:」「@」「&」「=」「+」「#」とドル記号の11文字もそのまま残す。URL全体をURLエンコードするときに使う
- 「URL全体」でも「%」は常に「%25」に変換するため、URLエンコード済みの文字列を再度変換すると二重にURLエンコードされます
- 「URL全体」でも「[」「]」は「%5B」「%5D」に変換します
- エンコードできない文字(単独のサロゲート)がある場合は、その位置(何文字目か)を表示
- デコード:
- 「%」に続く16進数2桁をUTF-8のバイト列として元のテキストに変換(大文字・小文字は区別しません)
- 「%」以外の文字(日本語や記号など)はそのまま出力
- 「+ を空白として扱う(フォーム形式)」を選択したときだけ「+」をスペースに変換(既定は「+」のまま。「%2B」は常に「+」に変換)
- エンコード時の形式の選択は、デコードには影響しません
- 「%」の後ろが16進数2桁でない場合は、その位置(何文字目か)を表示
- UTF-8として正しくない並びの場合は「UTF-8として正しくない文字があります」と表示
- 注意事項:
- URLの分解やクエリ文字列の整形には対応していません
- 日本語ドメインの変換(Punycode)には対応していません
- Shift_JISやEUC-JPなど、UTF-8以外の文字コードのURLエンコードには対応していません
- 入力欄の改行はLFとして扱われるため、改行は「%0A」に変換されます
- URLエンコードは暗号化ではないため、秘密情報の保護には使用できません
- 処理方式: ブラウザ内で処理し、入力内容はサーバーに送信しません
使い方
本ツールの使い方は以下の通りです:
- テキストボックスにURLエンコードしたいテキスト(デコードの場合はURLエンコードされた文字列)を入力します。
- モード(エンコード・デコード)を選択します。
- エンコード時は、形式を選択します。選択中の形式の用途が下に表示されます。
- 「標準(%20)」:クエリの値やパスの一部など、URLの一部分をURLエンコードします(既定)。
- 「RFC 3986」:「!」「'」「(」「)」「*」も変換してURLエンコードします。OAuth署名など厳密な形式が必要なときに使います。
- 「フォーム(+)」:フォーム送信の値に使います。スペースを「+」にしてURLエンコードします。
- 「URL全体(記号を残す)」:「:」「/」「?」「#」「&」「=」などを残して、URL全体をURLエンコードします。
- デコード時は形式を選択せず、「+ を空白として扱う(フォーム形式)」にチェックを入れると「+」をスペースに変換します。
- 下部に変換結果が自動で表示されます。
- モード・形式・チェックを変えると、結果もすぐに更新されます。
- 変換できない場合は、入力が止まってから少し後に、エラーの原因が表示されます。不正な「%」の並びなどは、その位置も表示されます。
- 必要に応じて以下を選択することができます。
- 「クリップボードにコピーする」ボタン
- 変換結果をクリップボードにコピーできます。
- 「リセットする」ボタン
- 入力内容と結果を消去し、モード・形式・「+ を空白として扱う」を初期値に戻します。
- 「クリップボードにコピーする」ボタン
※ 入力したテキストはブラウザ内で処理され、サーバーには送信されません。