PixConvert

無料のURLエンコード・デコード

この無料のURLエンコード・デコードツールで、リンク用にテキストをパーセントエンコードしたり、%20 のような文字列をテキストに戻したりできます。クエリ値には標準モード、リンク全体には「URI 全体」モードをお使いください。

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

1

モードを選びます。

エンコードまたはデコードを選び、1つの値ではなくリンク全体を扱う場合のみ「URI 全体」モードにチェックを入れてください。

2

貼り付けて実行します。

テキストまたはエンコード済みの文字列を入力欄に貼り付け、エンコードまたはデコードをクリックします。テキストを編集したりモードを変えたりした後は、もう一度ボタンをクリックしてください。

3

結果をコピーします。

コピーをクリックすると出力がクリップボードに入ります。入れ替えをクリックすると、出力を入力欄に移して逆のモードで実行し、結果を確認できます。

よくある質問

パーセントエンコード、スペース、特殊文字、2つのモードに関する質問への回答です。

URLエンコードとは何ですか?

URLエンコード(パーセントエンコードとも呼ばれます)は、リンクの中で安全でない文字や特別な役割を持つ文字を、% と16進数2桁に置き換える方法です。スペースは %20、& は %26 になります。ASCII 以外の文字はまず UTF-8 バイトに変換されるため、é は %C3%A9 になります。

URL の %20 は何を意味しますか?

%20 はエンコードされたスペースです。20 はスペース文字の16進コードで、my file.pdf というファイル名はリンクでは my%20file.pdf と表示されます。リンクを「デコード」タブに貼り付けると、すべての %20 がスペースに戻ります。

encodeURI と encodeURIComponent の違いは何ですか?

encodeURIComponent は1つの値をエンコードし、: / ? # & と = を % コードに変換します。encodeURI は URL 全体をエンコードし、これらの文字はそのままにします。このツールは標準では encodeURIComponent を使い、「URI 全体」モードにチェックを入れると encodeURI を使います。

スペースが + になったり %20 になったりするのはなぜですか?

HTML フォームはスペースを +(application/x-www-form-urlencoded 形式)として送信しますが、パーセントエンコードでは %20 を使います。このツールは常に %20 で書き出します。デコード時は + をプラス記号のまま残すため、フォームデータをデコードするときは、先に + をスペースに置き換えてください。

URL ではどの文字をエンコードする必要がありますか?

パラメータの値の中では、A~Z、a~z、0~9 と - _ . ~ 以外をすべてエンコードします。/ ? # & = や + などの予約文字は、リンクの構造としては問題ありませんが、値の中ではエンコードが必要です。標準モードでは、! ' ( ) * もそのまま残します。

URLエンコードは Base64 と同じですか?

いいえ。URLエンコードは安全でない文字を %XX コードに置き換えるだけで、英字や数字は読める状態のままです。Base64 はデータ全体を64文字のアルファベットで書き換えるため、サイズが約3分の1増えます。ファイルやバイナリデータには、Base64 エンコーダーをご利用ください。

「URI 全体」モードはどんなときに使いますか?

スペースや ASCII 以外の文字を含む完全なリンクを、クリックできる状態のまま使いたいときにお使いください。:// / ? & = と # はそのまま保持されます。検索語やリダイレクト URL など、リンクの中に入れる値には、オフのままご利用ください。

デコード時に「URI malformed」と表示されるのはなぜですか?

入力に、16進数2桁が続かない % が含まれています。たとえば 100%、途中で切れた %E0%A4%A のようなコード、または古い Latin-1 システムの %E9 のような UTF-8 として正しくないバイトなどです。該当部分を修正または削除してから、もう一度デコードしてください。

%2520 のように二重エンコードされた URL を直すには?

%2520 は、%20 がもう一度エンコードされて % が %25 になったものです。まず1回デコードして %20 にし、その出力を「デコード」タブの入力欄にコピーし直して、もう一度デコードするとスペースに戻ります。入れ替えではエンコードに切り替わってしまうため、この操作はできません。

JavaScript で URL をデコードするには?

1つの値には decodeURIComponent(value)、リンク全体には decodeURI(url) を呼び出します。このツールが実行しているのと同じ関数なので、出力はコードで得られる結果と一致します。壊れた % コードは URIError を投げるため、呼び出しは try/catch で囲んでください。

貼り付けたテキストはどこかに送信されますか?

いいえ。エンコードとデコードはお使いのブラウザー内で行われ、テキストが PixConvert に送信されることはありません。公開サイトのアナリティクスでは、コピーなどのクリック、実行にかかった時間、デコードに失敗したときの URI malformed などのエラーテキストを記録します。

2つのモードを備えたURLエンコード・デコードツール

クエリ値1つでもリンク全体でも、エンコードやデコードができます。あらゆる言語に対応する UTF-8、結果を逆にする入れ替え、ワンクリックコピーも備えています。

C++ & C# café を C%2B%2B%20%26%20C%23%20caf%C3%A9 に変換するURLエンコーダー。各文字とその % コードも表示しています

クエリ値とテキストをパーセントエンコード

標準モードでは、& = ? / # やスペースなど、リンクを壊す可能性のある文字をすべてエンコードするため、値をクエリ文字列の中で安全に使えます。スペースは %20、é は %C3%A9 になります。

  • スペースは + ではなく %20 になります
  • アクセント文字、CJK、絵文字は UTF-8 バイトに変換します
  • 予約されていない文字は入力したままです
今すぐ試す
完全なURIモードのURLエンコーダー。a b/?q=café は a%20b/?q=caf%C3%A9 になり、: / ? & = # と + はそのまま残ります

リンク全体向けの「URI 全体」モード

「URI 全体」モードにチェックを入れると、完全なリンクをエンコードできます。:// / ? & = と # はそのまま保持し、スペース、アクセント文字、その他の安全でない文字をエンコードするため、a b/café は a%20b/caf%C3%A9 になります。

  • :/?&=# と + はそのまま保持します
  • 初期設定ではオフです。実行する前にチェックを入れてください
  • URI 全体をデコードしても %2F と %23 はエンコードされたままです
今すぐ試す

プライベート、無料、登録不要

アカウントは不要です。貼り付けたテキストはブラウザー内でエンコードされ、当社に届くことはありません。アナリティクスが記録するのはコピーなどのクリックと実行にかかった時間だけで、貼り付けた内容は記録しません。

ワンクリックで入れ替え

入れ替えは、出力を入力欄に移し、エンコードとデコードを切り替えて実行します。エンコードした値が元に戻るかどうかを確認できます。

クエリ文字列にも対応

& や = を含む検索語など、値を1つずつエンコードして、リンクの = の後ろに貼り付けてください。クエリ全体をエンコードすると、& と = もコードに変わってしまいます。

改行とスペースを保持

改行は %0A、タブは %09、先頭や末尾のスペースは %20 になるため、複数行のテキストや余白付きの値も、デコードすると完全に元のまま戻ります。

URLエンコードが必要な場面

ユーザーが入力したテキストをURLに含めるときは、必ずURLエンコードが必要です。

クエリパラメーター

検索語、フィルター値、フォーム入力をリンクに追加する前にエンコードして、&、=、# などの文字でクエリ文字列が分断されないようにします。

  • C++ & C# のような検索語を安全にエンコード
  • 1つの値に含まれる & や = でリンクが壊れるのを防止
  • メールやドキュメントのリンク用にスペースを %20 に変換

リダイレクトURL

コールバックリンク全体を、redirect_uri や戻り先 URL として渡す前に標準モードでエンコードして、:// / ? や & を1つのパラメータ内に収めます。

  • OAuth の redirect_uri の値をワンステップでエンコード
  • ログインリンクの中に戻り先 URL を入れ込む
  • リダイレクトパラメータをデコードして遷移先を確認

API開発

ログル、Webhook、クエリ文字列のパーセントエンコードされた値をデコードして読んだり、curl やスクリプトで手書きする API 呼び出し用のテスト値をエンコードしたりできます。

  • サーバーログや Webhook のエンコードされた値を読む
  • 手書きの curl コマンド用にテスト値をエンコード
  • パラメータ内の %2520 のような二重エンコードを発見