URLやクエリ文字列をパーセントエンコードまたはデコードします — ブラウザ内で即座に処理されます。
コンポーネントモードはすべての予約文字をエスケープします(クエリ値やパスセグメントに使用)。完全なURLモードは「: / ? & =」などのURL構造文字をそのまま残します(URL全体に使用)。
URLエンコード(パーセントエンコード)は、URLで使用できない文字(スペース、記号、非ASCII文字など)を「%XX」というシーケンスに変換し、リンクやクエリ文字列、フォーム送信の中で安全に扱えるようにする方式です。このツールはURLのエンコードとデコードをすべてブラウザ内で行うため、入力した内容がどこかに送信されることはありません。
URLエンコーディングとは何ですか?
URLエンコーディング(パーセントエンコーディングとも呼ばれます)は、スペースや「&」、非ASCII文字などURLで安全に使えない文字を、その文字のバイト値を表す2桁の16進数の前に「%」を付けた形式に置き換える方式です。
encodeURIComponentとencodeURIの違いは何ですか?
encodeURIComponent(コンポーネントモード)は「/」「:」「&」を含むほぼすべての特殊文字をエスケープするため、単一のクエリ値やパスセグメントに安全に使えます。encodeURI(完全URLモード)は完全で正しいURLを前提としているため、これらの構造文字をそのまま残します。
デコード時にエラーが出るのはなぜですか?
入力に有効な2桁の16進数が続かない「%」が含まれている場合や、マルチバイトのUTF-8シーケンスが壊れている場合にデコードは失敗します。エンコードされた文字列が全体を正しくコピーされ、改変されていないか確認してください。
URLに %2520 のような二重エンコードされた文字が含まれるのはなぜですか?
%25 は「%」記号をエンコードした形なので、%2520 はすでにエンコード済みのテキスト(%20)がもう一度エンコードされたことを意味します。一度デコードすれば正しい値に戻ります。エンコードは元のテキストにだけ行い、すでにパーセントエンコードされた文字列には行わないでください。
英語以外の文字にも対応していますか?
はい。アクセント付きの文字、中国語、日本語、絵文字を含むあらゆるUnicode文字は、UTF-8のバイト列に変換されたうえでパーセントエンコードされるため、結果は常に安全なASCIIテキストになります。
スペースが%20や+になるのはなぜですか?
URLのパスやクエリ値では、encodeURIComponentはスペースを正しいパーセントエンコード形式である「%20」に変換します。一部の古いシステムやHTMLフォーム送信では、クエリ文字列内のスペースに代わりに「+」を使うことがありますが、これはフォーム特有の別の慣習であり、「%20」が普遍的に正しいエンコードであるため、このツールでは採用していません。
すべての処理はブラウザ標準のWeb APIを使ってローカルで行われます。テキストがサーバーにアップロードされることはありません。