java.lang.Object
java.net.URLEncoder
public class URLEncoder extends Object
HTML形式をエンコードするためのユーティリティ・クラスです。 このクラスには、Stringを
application/x-www-form-urlencoded
MIME形式に変換するためのstaticメソッドが含まれます。 HTML形式のエンコードの詳細については、HTMLの仕様を参照してください。
Stringをエンコーディングするときに、次のルールが適用されます。
- 英数字文字の「
a
」から「z
」、「A
」から「Z
」、および「0
」から「9
」は元のまま残します。 - 特殊文字の「
.
」、「-
」、「*
」、および「_
」は元のまま残します。 - 空白文字「 」はプラス記号「
+
」に変換されます。 - ほかのすべての文字は安全でなく、最初に何らかのエンコーディング方式を使用して1つ以上のバイトに変換されます。 次に、各バイトが3文字から成る文字列「
%xy
」で表現されます。ここで、xyはそのバイトを2桁の16進数で表現したものです。 使用が推奨されるエンコーディング方式はUTF-8です。 ただし、互換性のためにエンコーディングが指定されていない場合は、デフォルトの文字セットが使用されます。
たとえば、エンコーディング方式としてUTF-8を使用すると、文字列「The string u@foo-bar」は「The+string+%C3%BC%40foo-bar」に変換されます。これは、UTF-8では、文字「u」はC3 (16進数)とBC (16進数)の2バイトとしてエンコードされ、文字「@」は1バイトの40 (16進数)としてエンコードされるためです。
- 導入されたバージョン:
- 1.0
- 関連項目:
-
メソッドの詳細
-
encode
@Deprecated public static String encode(String s) 非推奨。結果の文字列は、デフォルトの文字セットによって異なります。 代わりに、encode(String,String)メソッドを使ってエンコーディングを指定するようにしてください。文字列をx-www-form-urlencoded
形式に変換します。 このメソッドは、デフォルトの文字セットをエンコーディング・スキームとして使用し、安全でない文字のバイトを取得します。- パラメータ:
s
- 変換対象のString
。- 戻り値:
- 変換後の
String
-
encode
public static String encode(String s, String enc) throws UnsupportedEncodingException 特定のエンコーディング・スキームを使って文字列をapplication/x-www-form-urlencoded
形式に変換します。このメソッドは、encode(String s, Charset charset)と同じように動作しますが、「文字セットを参照」は指定されたエンコーディング名を使用します。
- パラメータ:
s
- 変換対象のString
。enc
- サポートされる文字エンコーディングの名前。- 戻り値:
- 変換後の
String
- 例外:
UnsupportedEncodingException
- 指定されたエンコーディングがサポートされていない場合- 導入されたバージョン:
- 1.4
- 関連項目:
-
encode
特定のCharsetを使用して、文字列をapplication/x-www-form-urlencoded
形式に変換します。 このメソッドは、指定された文字セットを使用して、安全でない文字のバイトを取得します。ノート: World Wide Web Consortium Recommendationには、UTF-8を使用すべきであると明記されています。 そうしなかった場合、互換性を確保できなくなる可能性があります。
- パラメータ:
s
- 変換対象のString
。charset
- 指定された文字セット- 戻り値:
- 変換後の
String
- 例外:
NullPointerException
-s
またはcharset
がnull
の場合。- 導入されたバージョン:
- 10
- 関連項目:
-