public class URLDecoder extends Object
application/x-www-form-urlencoded MIME 形式から String をデコードするための static メソッドが含まれます。
その変換処理は、URLEncoder クラスによって使用される処理の逆になります。エンコード済み文字列に含まれる文字は必ず、次のいずれかであると仮定されます。「a」 から「z」、「A」から「Z」、「0」から「9」、「-」、「_」、「.」、「*」。文字「%」は使用可能ですが、これは、特殊なエスケープシーケンスの開始と解釈されます。
次の表記規則が適用されます。
a」から「z」、「A」から「Z」、および「0」から「9」は元のまま残します。
.」、「-」、「*」、および「_」は元のまま残します。
+」を空白文字「 」に変換します。
%xy」という形式のシーケンスは、バイトの表現として扱われます。ここで、xy は 8 ビットを 2 桁の 16 進数で表現したものです。次に、それらのバイトシーケンスを連続して 1 つ以上含む部分文字列はすべて、エンコーディング結果がそれらの連続したバイトになるような文字へと置換されます。これらの文字のデコードに使用するエンコーディング方式は指定可能であるが、指定しなかった場合には、プラットフォームのデフォルトのエンコーディングが使用されます。
このデコーダが不正な文字列を処理する際に使用できる方法は、2 つあります。不正な文字をそのまま残すこともできますし、IllegalArgumentException をスローすることもできます。デコーダがどちらの方法を取るかは、実装によって異なります。
| コンストラクタと説明 |
|---|
URLDecoder() |
@Deprecated public static String decode(String s)
x-www-form-urlencoded 文字列をデコードします。プラットフォームのデフォルトのエンコーディングに基づいて、「%xy」という形式の任意の連続するシーケンスがどの文字を表しているかが決定されます。s - デコードする StringStringpublic static String decode(String s, String enc) throws UnsupportedEncodingException
application/x-www-form-urlencoded 文字列をデコードします。指定されたエンコーディングに基づいて、「%xy」という形式の任意の連続するシーケンスがどの文字を表しているかが決定されます。
注: World Wide Web Consortium Recommendationには、UTF-8 を使用すべきであると明記されています。そうしなかった場合、互換性を確保できなくなる可能性があります。
s - デコードする Stringenc - サポートされる文字エンコーディングの名前。StringUnsupportedEncodingException − 文字エンコーディングを参照する必要があるが、指定された文字エンコーディングがサポートされていない場合URLEncoder.encode(java.lang.String, java.lang.String) バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.