URLエンコード/デコード
日本語やスペースを含むURLをそのまま貼れば、すぐにパーセントエンコード(%xx)に変換します。逆方向のデコードも同じ画面で。encodeURIComponent と encodeURI を切り替えてクエリパラメータの確認にも使えます。入力内容はブラウザの外に出ません。
例(クリックで試す)
URLエンコード/デコードツールの使い方
上のテキストエリアに変換したい文字列やURLを入力してください。エンコード・デコードの切り替えは上部のセグメントボタンで行えます。入力と同時にリアルタイムで変換結果が表示されます。
- エンコード:日本語・スペース・記号などURLに直接書けない文字を
%E3%81%82のような形式に変換します。 - デコード:パーセントエンコードされた文字列を元のテキストに戻します。
- encodeURIComponent(推奨):
: / ? # [ ] @ $ & + , ; =などURLの区切り文字をエンコードします。クエリパラメータの値を扱うときに使います。! ' ( ) *は仕様上エンコードされないので、これらも逃がしたいときは自分で置き換えてください。 - encodeURI:URL全体をエンコードする想定で、構造文字はそのまま残します。ただし
[ ]だけは%5B%5Dにエンコードされます。
具体例:検索クエリの値をエンコードする
たとえば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全体をエンコードする想定のため構造文字は残しますが、「[]」だけは%5B %5Dにエンコードされます。
デコードに失敗する場合はどうすればよいですか?
入力文字列に不正なパーセントエンコード(%の後に2桁の16進数が続かないなど)が含まれているとデコードに失敗します。その場合は画面にエラーメッセージが表示されます。文字列が正しいパーセントエンコードになっているか確認してください。