Volade エコシステム — Web ツール

URL エンコーダー/デコーダー

テキストや URL を percent-encoding(RFC 3986)でエンコードし、すぐにデコード — コンポーネント、クエリ文字列、パスセグメント、完全な URL の 4 範囲、スペースは %20 または +、UTF-8 エンコード、パラメータ付き URL 解析、query string エディター、Base64・HTML エンティティ・16 進との相互変換。無料・登録不要・100 % ローカル:データはブラウザーから一切出ません。

6 変換モード0 サーバーへ送信されるバイト∞ 回の変換、サイズ無制限
このツール

オンラインの URL エンコーダー/デコーダー

テキスト、エンコード済み URL、クエリ文字列を貼り付けるだけ。変換はキーを打つたびに更新され、「変換」ボタンは不要です。

URL エンコーダー/デコーダー

オンライン 開発・コード & データ
ログイン
ショートカット: Ctrl+Enter 変換
準備完了。
変換は入力中に実行されます · Ctrl+Enter はアクティブなタブを変換します · percent-encoding は RFC 3986 に準拠 · 100 % ローカル、デバイスからデータは出ません。
0,0 0補足 すべてのツール
無料版と Premium の違いは?

URL エンコーダー/デコーダーは無料で使い放題:アカウント不要、インストール不要、通信なし。Premium で Volade エコシステム全体が使えます。

無料リアルタイム percent-encoding、4 範囲、UTF-8
無料URL 解析、パラメータのデコード、query string エディター
無料Base64・HTML エンティティ・16 進の相互エンコード
Premium履歴とスニペットの暗号化クラウド同期
Premiumエコシステム全体で共有できる API アクセスとスクリプト
Premium を解禁
機能

URL のエンコード・デコード・解析を制限なく

テキストのエスケープ、URL 解析、クエリパラメータ、相互変換を 1 つのエンジンで — デバイスから出すことはありません。

URL をリアルタイムにエンコード&デコード

テキスト・URL・パラメータを貼り付ければ、入力中に percent-encoding が表示されます。逆も同じ:%XX 文字列を貼れば内容がすぐに読めます。4 つのエンコード範囲、スペースは %20 または +、16 進の大文字・小文字、4 つの文字エンコード、検出された各シーケンスの詳細に対応。

今すぐエンコード

URL とパラメータを解析

あらゆる URL をスキーム、ユーザー、ホスト、ポート、パス、クエリ、フラグメントに分解し、生の値とデコード後の値を並べて表示します。query string の各パラメータはキー・値・エンコード後のペアごとに一覧化され、パラメータエディターが並べ替え可能でコピーしやすい文字列を再構築します。

URL を解析

徹底したプライバシー

ネットワーク通信はゼロ:エンコード、デコード、解析はすべてブラウザー内で完結し、オフラインでも動作します。内部 URL、トークン、API キー、リダイレクト文字列、誰にも知られたくない識別子を含むアドレスに最適です。

詳しく見る
使い方の流れ

エンコード・デコード・解析は 3 ステップ

インストールも登録も不要:モバイルでも PC でも、いつでも使えます。

コンテンツを貼り付ける

テキスト、完全な URL、単独のパラメータ、エンコード済みの文字列は、「エンコード」「デコード」「URL を解析」の各タブに貼り付けます。既存の query string は 1 クリックでパラメータエディターに読み込まれます。

フォーマットを設定

範囲(コンポーネント、クエリ、パス、完全な URL)、文字エンコード、16 進の大小文字、スペースの扱いを選択します。結果は即座に更新され、オーバーヘッドも計算に含まれます。

コピーして再利用

結果をコピーし、.txt でダウンロードし、タブ間で移動したりリンクで共有したりできます。ローカル履歴に最近の変換が残るので、1 クリックで呼び戻せます。

クイックリファレンス

percent-encoding 早見表

URL をエスケープする前に多くの開発者が確認すること — 「RFC 3986 & リファレンス」タブの対話式 ASCII テーブル付き。

文字%XX コードデフォルトの範囲エンコード例
スペース%20なしa b → a%20b
「+」%2Bパス、完全な URLa+b → a%2Bb
「&」%26クエリ、パス、URLa&b → a%26b
「=」%3Dクエリ、パス、URLa=b → a%3Db
「/」%2Fパス、完全な URLa/b → a%2Fb
「?」%3F完全な URLa?b → a%3Fb
「#」%23完全な URLa#b → a%23b
「é」%C3%A9なし、UTF-8 で 2 バイトété → %C3%A9t%C3%A9

URL の「エンコード」「デコード」とは何を意味する?

URL をエンコードする (「url encode」「urlencode」)は、アドレスで禁止されている文字 — スペース、アクセント、アンドサイン、プラス記号 — を、パーセント記号とそのバイトの 16 進 2 桁からなるシーケンスに変換します。 URL をデコードする (「url decode」「decoder url」)はこのシーケンスを逆に読みます:バイト列を復元し、宣言されたエンコード(多くは UTF-8)に従って文字に変換します。まさにこの 2 つが「encoder decoder url」「percent encoding online」と検索する人が探しているものです。

percent-encoding は圧縮でも暗号でもありません:アクセント付きの単語は 2 倍の長さになり、誰でも目で読めます。役割は URL に任意のバイトを通すことだけで、URL はデフォルトで ASCII の一部しか受け付けません。逆に Base64 は完全にテキストのチャンネルでバイトを運ぶためのもの — 見た目は似ていますが、互換性はありません。

URL を percent-encoding でエンコードする方法

ステップ 1:テキストは選択した文字セット(デフォルトは UTF-8)でバイトに変換されます。ステップ 2:各バイトについて、対応する文字が選択範囲の許容文字リストに含まれるかを確認します。ステップ 3:含まれていればそのままコピーされ、それ以外は %XX(XX はバイトの 16 進 2 桁)です。ステップ 4:スペースを + にするオプションが有効な場合、バイト 32 はプラス記号に置き換えられ、従来の値は %20.

具体例:「 café & été 」をコンポーネント範囲でエンコードすると caf%C3%A9%20%26%20%C3%A9t%C3%A9。エンコーダーにこのテキストを入力するだけで、結果、入力サイズ、出力サイズ、オーバーヘッドがキーを離す前に表示されます。

4 つのエンコード範囲

そのうち、 コンポーネント範囲 が保持するのは文字と数字、そして - _ . ! ~ * ' ( ) のみです。パラメータ値の範囲であり、対応するのは encodeURIComponentです。さらに クエリ文字列 はアンドサインとイコールも保持するので、query string 全体を再構築できます。さらに パスセグメント が許可するのは / : @ & = + $ , ; で、スラッシュを壊さないためです。完全な URL がさらに加わるのは ?, #, [ と ] で、ほぼ何もエスケープされません。スペースと非 ASCII 文字だけが %XX.

エンコード済み URL をデコードする方法

デコードは文字列を左から右へ走査します:パーセント記号+16 進 2 桁で 1 バイトを得て、それ以外の文字は選択したエンコードに従って変換後にそのまま残します。バイトはまとめて文字に変換され、「é」は 2 バイト、「日」は 3 バイト、絵文字は 4 バイトです。「デコード」タブには、見つかった各シーケンス、文字列内の位置、対応するバイトとテキストが表示されます。

パーセント記号の後に有効な 16 進 2 桁がない場合は、理由が明確に表示されます:シーケンス不完全か、16 進文字が無効か。「% を修正」ボタンは孤立したパーセント記号を次の %25に変換し、情報ロスなしで文字列をデコード可能にします — 部分的にエスケープされた URL を扱う際に最も安全な方法です。

スペース:%20 と + — フォームのルール

%20 は厳密な percent-encoding のスペースです。パス、クエリ、フラグメント、ヘッダーのどこでも使えます。一方、記号 +は次の形式でのみスペースとして扱われます: application/x-www-form-urlencoded 。これは HTML フォームや従来の query string が使う形式で、それ以外では文字通りのプラス記号のままです — 混同しやすいので、値をエンコードするときは必ず次の %2B にエスケープします。

実践:フォームの項目に入力する場合、または <form>の振る舞いを再現する場合は、「スペースを + 」。リダイレクト URL、canonical、共有リンクでは常に %20。デコーダーは + をデフォルトでスペースとして扱い、この動作は 1 クリックで無効化できます。

RFC 3986:unreserved、sub-delims、gen-delims

RFC 3986 は ASCII 文字を 3 つのカテゴリに分けます。 非予約文字 (文字と数字、 - _ . ~ )が常にそのまま保持されます。さらに、 サブデリミタ ! $ & ' ( ) * + , ; = と、 ジェネリックデリミタ : / ? # [ ] @ は構造的な意味を持ちます:オーサリティ、パス、クエリ、フラグメントを分ける役目です。それ以外 — スペース、引用符、山括弧、波括弧、パーセント記号 — はすべてエンコードが必要です。

これらのカテゴリは、まさに「RFC 3986 & リファレンス」タブが 1 文字ずつ表示しているものです。タイルをクリックすると、16 進コード、カテゴリ、その文字を保持する範囲がわかります。「この文字はエスケープすべきか?」に答えるための最速リファレンスです。

アクセント文字、絵文字、UTF-8

URL は安全な ASCII バイトしか運ばないため、U+007F を超える文字はすべてエンコードが必要です。UTF-8 で「é」は C3 A9 で、次のようになります: %C3%A9。また「日」は 3 バイトで 3 つのシーケンスになり、絵文字は 4 バイトでエンコード後は 8 文字になります。長いと感じてもバグではありません:すべてのプロトコルと共存するための代償です。最後に元の文字セットにも注意を — Latin-1 でエンコードした文字列を UTF-8 でデコードすると化け文字が出ます。だから「デコード」タブに 4 つの選択肢があるのです。

なぜ encodeURIComponent だけでは足りないのか

encodeURIComponent は次を除くすべてをエンコードします A-Z a-z 0-9 - _ . ! ~ * ' ( )。パラメータ値には適していますが、スラッシュ、コロン、アンドサインまでエスケープするため、完全な URL は壊れます。 encodeURI は逆のことをします:URL の構造は保ちますが、スペースやアクセントは通してしまうため、生のテキストには使えません。この 2 つはどちらもカバーしています — それ以上に、「クエリ文字列」範囲と「パスセグメント」範囲がその間を埋めます。

percent-encoding と Base64:違う 2 つのツール

percent-encoding はバイト単位で置き換え、元テキストの可読性を保ちますが、その代償としてかなり長くなります。Base64 はバイトを 3 つずつまとめ、64 文字のアルファベットで書き直します:コンパクトですがまったく読めず、URL-safe 変種なしでは URL にそのままは使えません。「相互エンコード」タブで両方を一目で比較でき、おまけとして 16 進バイト、HTML エンティティ、エスケープ済み JSON 文字列も — コピーする前に正しい表現を選べます。

よくある間違い:二重エンコードと孤立した %

最もよくあるのは、同じ文字列を 2 回エスケープすることです:スペースは %20、次に %2520となり、サーバーが文字通り「%20」を受け取ってしまいます。2 つ目はパーセント記号自身を忘れることで、これは次の %25 にしなければなりません。さもないとデコードはシーケンスの先頭と誤認して停止または打ち切りになります。最後に、フォームパラメータで + を未エスケープのまま残すのは、意図しないスペースを挿入するのと同じです。デコードは不正なシーケンスを検知し、「% を修正」ボタンがこのケースをロスなく直します。

エンコード済み URL はどこに潜むのか

トラッキング用 query string の UTM、さらには redirect_uri や OAuth、さらには webhooks で、ターゲット URL にネストしたパラメータが含まれるものは、 署名付きコールバック URL 、サーバーログ、sitemap、canonical、さらに次の <a href> で生成されたもの、 JWT で payload が Base64URL のもの、さらに data: や次の Locationヘッダー、そして GET で送信されるすべての HTML フォームにも含まれます。1 秒でエンコードとデコードを使いこなせば、文字列 1 つのためにターミナルを開く必要はなくなります。

パフォーマンスとベストプラクティス

ブラウザーではエンコードもデコードも線形で、数メガバイトでも目立ったコストはありません:各文字は 1 回だけ処理され、再帰も文字ごとの割り当てもありません。注意すべきは二重エンコード — 保存前に必ず往復を確認すること — と、複数キロバイトある URL で、2 000 文字を超えるとプロキシに切り詰められがちな点です。生成した文字列のそばに使った範囲を書きましょう:「コンポーネント」と「完全な URL」では、同じテキストでも結果が変わります。

こんな方におすすめ

バックエンド/フロントエンド開発者(query string、リダイレクト、OAuth)、インテグレーターと技術ライター(UTM リンク、canonical、トラッキング)、管理者と DevOps(Webhook、署名付き URL、ログ)、テスターとペネトレーションテスター(パラメータの fuzzing、フィルタ回避)、学生(UTF-8・ASCII・RFC 3986 の学習)、そして次のものが必要なオンラインの URL エンコーダー/デコーダー を、速く・充実して・安心して使えるものとして — 補完は次のBase64 エンコーダー/デコーダー と JSON フォーマッター.

FAQ

URL エンコーダー/デコーダー よくある質問

URL をエスケープしたりデコードしたりする前に知っておきたいこと。

オンラインで URL をエンコードするには?

テキストまたは URL を「エンコード」タブに貼り付け、範囲(コンポーネント、クエリ文字列、パスセグメント、完全な URL)を選択し、フォーム向けなら「スペースを + 」をオンにします。percent-encoding は即座に表示され、入力サイズ・出力サイズ・オーバーヘッドもわかります。「エンコード後の URL をコピー」で使えます。

エンコード済み URL をデコードするには?

文字列を「デコード」タブに貼り付けると、%XX シーケンスをバイト単位で読み、選択したエンコード(デフォルトは UTF-8)でテキストに復元します。「+ をスペースとして扱う」チェックボックスは HTML フォームの動作を再現し、「% を修正」ボタンはデコード前に孤立したパーセント記号を直します。テーブルには各シーケンス、そのバイト、得られたテキストが表示されます。

%20 と + の違いは?

%20 は厳密な percent-encoding のスペースで、パス・クエリ・フラグメントのどこでも使えます。+ がスペースとして扱われるのは、HTML フォームが使う application/x-www-form-urlencoded 形式だけで、それ以外では文字通りのプラス記号です(そのため %2B にエンコードする必要があります)。フォーム向けにパラメータをエスケープするなら「スペースを + 」をオンにし、それ以外は %20 を選びましょう。

percent-encoding とは?なぜ RFC 3986 に従うのか?

percent-encoding は、URL で禁止されている文字をすべて、パーセント記号+そのバイトの 16 進 2 桁に置き換えます(UTF-8 の「é」なら %C3%A9)。RFC 3986 は 3 つのカテゴリ — 非予約文字、サブデリミタ、ジェネリックデリミタ — を定義しており、「RFC 3986 & リファレンス」タブでコードとともに 1 つずつ確認できます。

エンコードすべきはコンポーネント、パス、完全な URL のどれ?

単一パラメータの値はコンポーネントでエンコードします:英数字でも - _ . ! ~ * ' ( ) の形でもないものはすべて %XX になり、アンドサインとイコールも含みます。クエリ文字列は区切りの & と = を保持します。パスセグメントはスラッシュとコロンを保持します。完全な URL はほとんど何も変更せず、スペース・アクセント・非 ASCII 文字だけが %XX になります。

なぜアクセント文字は %C3%A9 になる?

URL は安全な ASCII バイトしか含まないからです。UTF-8 で「é」は 2 バイト(0xC3 と 0xA9)で、それぞれが %C3%A9 になります。絵文字のような astral プレーンの文字は 4 バイトを使い、エンコード後は 8 文字になります。エンコーダーはこれらを自動で計算し、「相互エンコード」タブで percent-encoding・Base64・16 進バイト・HTML エンティティを並べて比較できます。

このツールは query string を解析・再構築できますか?

できます。「URL を解析」タブは URL をスキーム、ユーザー、ホスト、ポート、パス、クエリ、フラグメントに分解し、各パラメータをデコード後のキー・値とエンコード後のペアまで一覧化します。「クエリパラメータ」タブは逆の操作で、キーと値のペアを追加・並べ替え・貼り付けすると、コピーできるエンコード済み文字列を再構築します。

このツールはデータをサーバーに送りますか?

いいえ:すべてブラウザー内で実行され、ネットワーク通信もアカウントもありません。オフラインで、内部 URL、トークン、API キー、識別子を含むリダイレクト先でも使えます。履歴は端末のローカルストレージに残り、1 クリックで消せます。

100 % ローカルの URL エンコーダー/デコーダー:データはパソコンから出ません

一般的なオンライン URL エンコーダーと違い、文字列は一切送信されません:エンコード、デコード、URL 解析、パラメータの再構築はすべてブラウザー内で完結します。そのため、内部のリダイレクト URL、署名付きトークン、接続文字列、コード片を、機内モードや公開ネットワークでも安心してエスケープできます。履歴と最後の入力はローカル(localStorage)に保存され、端末から出ません。

また、 Premium Volade は、ツールとは独立したオプションの暗号化クラウド同期を追加します — それ以外はすべて無料・無制限・登録不要のままです。

1 つのプレミアムライセンスで、すべての Web ツール

URL エンコーダー/デコーダー、Base64 エンコーダー/デコーダー、JSON フォーマッター、ジェネレーター、PDF エディターなど数十の無料ツール — そして 1 つのライセンスで Volade エコシステム全体。

1つのライセンスで、プレミアム・エコシステム全体 ブラウザ · CMS · デスクトップ · モバイル · スクリプト · API · ツール · Database
1つのライセンスで全部 プレミアムへ ログイン