URLエンコード/デコード
日本語やスペースを含むURLをそのまま貼れば、すぐにパーセントエンコード(%xx)に変換します。逆方向のデコードも同じ画面で。encodeURIComponent と encodeURI を切り替えてクエリパラメータの確認にも使えます。入力内容はブラウザの外に出ません。
例(クリックで試す)
URLエンコード/デコードツールの使い方
上のテキストエリアに変換したい文字列やURLを入力してください。エンコード・デコードの切り替えは上部のセグメントボタンで行えます。入力と同時にリアルタイムで変換結果が表示されます。
- エンコード:日本語・スペース・記号などURLに直接書けない文字を
%E3%81%82のような形式に変換します。 - デコード:パーセントエンコードされた文字列を元のテキストに戻します。
- encodeURIComponent(推奨):
: / ? # [ ] @ ! $ & ' ( ) * + , ; =などURLの区切り文字もエンコードします。クエリパラメータの値を扱うときに使います。 - encodeURI:URL全体をエンコードする想定で、URLの構造文字はエンコードしません。
具体例:検索クエリの値をエンコードする
たとえばAPIに q=便利 ツール という値を渡したいとき、空白や日本語はそのままURLに書けません。入力欄に 便利 ツール を貼ってエンコード(encodeURIComponent)すると、
- 入力(before):
便利 ツール - 結果(after):
%E4%BE%BF%E5%88%A9%20%E3%83%84%E3%83%BC%E3%83%AB
これを https://example.com/search?q= の後ろに貼れば、安全に送信できるURLが完成します。逆に % だらけのURLを受け取ったら、そのまま貼るだけで自動的にデコードされ、元の文字列に戻ります。
こんな場面で便利です
- 日本語を含む検索クエリやURLのエンコード・デコード確認
- APIリクエストのクエリパラメータ作成・検証
- ブラウザのアドレスバーに貼ったURLの文字化け解消
- HTMLフォームの
application/x-www-form-urlencodedデータの確認
よくある質問
入力したURLやテキストはサーバーに送信されますか?
いいえ。エンコード・デコード処理はすべてお使いのブラウザ内で完結し、入力内容がサーバーに送信・保存されることはありません。機密情報を含むURLでも安心してご利用いただけます。
encodeURIComponentとencodeURIの違いは何ですか?
encodeURIComponentは「:/?#[]@!$&'()*+,;=」などのURLの区切り文字も含めてすべてエンコードします。クエリパラメータの値など、URLの一部をエンコードする際に使います。encodeURIはURL全体をエンコードする想定のため、URLの構造文字はエンコードせずに残します。
デコードに失敗する場合はどうすればよいですか?
入力文字列に不正なパーセントエンコード(%の後に2桁の16進数が続かないなど)が含まれているとデコードに失敗します。その場合は画面にエラーメッセージが表示されます。文字列が正しいパーセントエンコードになっているか確認してください。