URL エンコード/デコード
URLコンポーネントをパーセントエンコード/デコード。
ファイルは端末内に留まります
このツールはすべての処理をブラウザ内で行います。サーバーへのアップロードはありません。
📝 URL エンコード/デコードについて
URLに使える文字は限られています。スペース、日本語のテキスト、&、=、? などの予約文字はパーセントエンコードする必要があり、各バイトを % と2桁の16進数で表します。このツールは、テキストをこの形式にエンコードしたり、パーセントエンコードされた文字列を読めるテキストにデコードしたりします。
内部ではJavaScriptのencodeURIComponentとdecodeURIComponentを使用しています。これらはクエリパラメータの値やパスの一部分など、URLの個々の構成要素を処理するための関数です。そのため、/ や : を含む予約文字もエンコードされます。URL全体を貼り付けて「エンコード」を押すとスラッシュやコロンまで変換されてしまうので、検索キーワードなど実際に埋め込む部分だけをエンコードしてください。
クエリ文字列を手作業で組み立てるとき、%XX だらけのトラッキングリンクの中身を確認するとき、リダイレクトパラメータをデバッグするときなどに便利です。テキストはまずUTF-8に変換されるため、「안녕」は %EC%95%88%EB%85%95 になります。すべての処理はブラウザ内で行われます。
📘 使い方
- 1
テキストを貼り付け
「入力」欄に、エンコードしたい値、または内容を確認したいパーセントエンコード文字列を入力します。
- 2
エンコードまたはデコード
「エンコード」を押すとテキストをパーセントエンコードし、「デコード」を押すと %XX 形式を元の文字に戻します。
- 3
出力をコピー
「出力」欄の下にある「コピー」ボタンを使い、結果をURLやコードに貼り付けます。
❓ よくある質問
スラッシュやコロンまでエンコードされるのはなぜですか?
このツールは入力を1つの構成要素として扱い、予約文字をすべてエンコードするencodeURIComponentを使っているためです。URL全体ではなく、パラメータの値だけをエンコードしてください。
スペースは + と %20 のどちらに変換されますか?
スペースは %20 になります。入力中の + 記号は %2B にエンコードされ、デコード時の + はスペースに変換されずそのまま残ります。
デコード時にエラーが表示されるのはなぜですか?
% の後に有効な16進数2桁が続いていない場合や、UTF-8として解釈できないバイト列の場合はデコードできません。単独の % や途中で切れた部分がないか確認してください。