入出力データはサーバーに送信されず、どこにも保存されません。すべての処理はブラウザ上で完結します。

URL エンコード/デコード|パーセント変換

モード
出力

使い方


テキストを入力欄に入力すると、リアルタイムでURLエンコード・デコードが実行されます。モード切替ボタンでエンコードとデコードを切り替えられます。出力をコピーボタンでクリップボードにコピーできます。

URLエンコードとは


URLエンコード(パーセントエンコーディング)は、URLに使用できない文字を%XXの形式に変換する仕組みです。スペースは%20、日本語や特殊記号はUTF-8バイト列に変換されます。Webフォーム送信、APIリクエスト、クエリパラメータの構築などで広く使われています。

活用シーン


  • クエリ文字列の構築 — パラメータ値に日本語や特殊文字を含むURLを正しく組み立てる
  • フォームデータのエンコード — application/x-www-form-urlencoded形式でのPOSTリクエストデータの準備
  • APIパラメータの処理 — REST APIのエンドポイントに渡すパラメータの安全なエンコード
  • ディープリンクの作成 — 特殊文字やマルチバイト文字を含むURLスキームの正しいエンコード

URLの予約文字


RFC 3986では、URLの構造を定義するために予約文字が規定されています。: / ? # [ ] @ はURL構成要素の区切りに使用され、! $ & ' ( ) * + , ; = はサブデリミタとして機能します。これらの文字をデータとして使用する場合は、パーセントエンコーディングが必要です。例えば、検索クエリに「C++ & Java」を含める場合、+は%2B、&は%26にエンコードしなければURLが正しく解釈されません。

encodeURIとencodeURIComponentの違い


JavaScriptには2つのエンコード関数があります。encodeURI()はURL全体をエンコードする関数で、URLの構造文字(: / ? # など)はそのまま保持します。一方、encodeURIComponent()はパラメータ値をエンコードする関数で、予約文字も含めてほぼすべての非英数字をエンコードします。クエリパラメータの値にはencodeURIComponent()を、URL全体にはencodeURI()を使うのが正しい使い分けです。

プライバシー


すべてのエンコード・デコード処理はブラウザ内で完結します。データがサーバーに送信・保存・記録されることは一切ありません。APIキーやトークンなどの機密データも安心してご利用いただけます。

よくある質問


このツールのエンコードは encodeURI と encodeURIComponent のどちらですか?

encodeURIComponent と同等で、: / ? # & = などの予約文字も含めてエンコードします。そのためクエリパラメータの「値」をエンコードする用途に最適です。URL 全体をまとめてエンコードしたい場合は意図せず構造文字まで変換される点にご注意ください。

APIキーやトークンを含むテキストを貼り付けても安全ですか?

はい。エンコードもデコードもすべてブラウザ内で実行され、入力したデータがサーバーに送信・保存・記録されることはありません。機密性の高い文字列も安心して変換できます。

日本語や絵文字も正しくエンコードできますか?

できます。マルチバイト文字や絵文字は UTF-8 のバイト列に変換され、各バイトが %XX 形式で出力されます。たとえば「あ」は %E3%81%82 になります。

変換できる文字数に上限はありますか?

ツール側で固定の文字数制限は設けていません。すべてブラウザ内のメモリで処理するため、極端に巨大なテキストでは端末の性能に依存して動作が重くなることがあります。

デコード時に不正なパーセントシーケンスがあるとどうなりますか?

%ZZ のような無効なシーケンスや、UTF-8 として成立しないバイト列が含まれているとデコードに失敗し、エラーとして扱われます。元の文字列にエンコード漏れや破損がないかを確認してください。