DevFormatLab

URL エンコード / デコード

パーセントエンコード · デコード · クエリ対応

URL や URI コンポーネントをローカルでエンコード/デコードします。クエリ文字列やフォームデータに便利です。

96 文字 → 158 文字 · 158 バイト
入力有効
出力

URL エンコードとデコードはすべてブラウザー内で実行されます。

URL エンコードとは?

URL エンコード(パーセントエンコード)は、URL 内で安全に使えない文字や特別な意味を持つ文字を %HH のバイト列に変換する仕組みです。空白、日本語、中国語、絵文字、クエリ値の中の /、&、=、# などは、正しくエンコードしないと URL の意味を変えてしまいます。このツールは、完全な URL を扱う encodeURI 風のモードと、クエリ値やパスセグメントを扱う encodeURIComponent 風のコンポーネントモードを提供します。application/x-www-form-urlencoded で使われる + 空白にも対応します。

機能

  • 完全な URL または URI コンポーネントをエンコード
  • 不正なパーセント列を分かりやすく表示してデコード
  • フォームやクエリ文字列向けの + ↔ 空白変換
  • ブラウザー標準の encodeURI / encodeURIComponent による Unicode 対応
  • リアルタイム出力、コピーとダウンロードに対応
  • 100% ブラウザー内処理でアップロード不要

使い方

  1. 上部でエンコードまたはデコードを選びます。
  2. クエリ値、パスセグメント、redirect_uri などを URL に埋め込む場合はコンポーネントモードを有効にします。完全な URL では無効にします。
  3. application/x-www-form-urlencoded を扱う場合は + 空白オプションを有効にします。
  4. 左側にテキストを貼り付け、右側の結果をコピーします。

よくある質問

完全な URL とコンポーネントのどちらを使うべきですか?

https://example.com/path?a=1 のように URL 構造を持つ文字列は完全 URL モードを使います。検索語、redirect_uri、ファイル名、パスセグメントなど URL の中へ入れる値はコンポーネントモードを使います。/、?、&、=、# などをエンコードして外側の URL を壊さないようにします。

空白の %20 と + は何が違いますか?

%20 は URL 標準の空白表現です。+ は application/x-www-form-urlencoded、つまり HTML フォームやクエリ文字列でよく使われます。このツールではオプションで空白を + に変換できます。

malformed URI エラーはなぜ起きますか?

単独の % や途中で切れた UTF-8 バイト列など、不完全なパーセントエンコードがあるとデコードに失敗します。元の文字列を壊さず保持するか、元テキストから再度エンコードしてください。

日本語や絵文字は正しく扱えますか?

はい。ブラウザーの URL API は Unicode を UTF-8 のパーセント列としてエンコードするため、日本語、中国語、絵文字、アクセント付き文字を正しく往復できます。

関連ツール

Canonical: https://devformatlab.com/ja/url-encoder