使用URLEncoder、URLDecoder进行URL参数的转码与解码

url后参数的转码与解码

import java.net.URLDecoder;
import java.net.URLEncoder;

String strTest
= "?=abc?中%1&2<3,4>"; strTest = URLEncoder.encode(strTest, "UTF-8"); System.out.println(strTest); strTest = URLDecoder.decode(strTest,"UTF-8"); System.out.println(strTest);

执行结果:

%3F%3Dabc%3F%E4%B8%AD%251%262%3C3%2C4%3E
?=abc?中%1&2<3,4>

jdk相关说明:

String java.net.URLEncoder.encode(String s, String enc) throws UnsupportedEncodingException

Translates a string into application/x-www-form-urlencoded format using a specific encoding scheme. This method uses the supplied encoding scheme to obtain the bytes for unsafe characters.

Note: The World Wide Web Consortium Recommendation states that UTF-8 should be used. Not doing so may introduce incompatibilites.

Parameters:
    s String to be translated. 
    enc The name of a supported character encoding. 
Returns:
    the translated String. 
Throws:
    UnsupportedEncodingException - If the named encoding is not supported 
Since:
    1.4 
See Also:
    URLDecoder.decode(java.lang.String, java.lang.String)

 
String java.net.URLDecoder.decode(String s, String enc) throws UnsupportedEncodingException

Decodes a application/x-www-form-urlencoded string using a specific encoding scheme. The supplied encoding is used to determine what characters are represented by any consecutive sequences of the form "%xy".

Note: The World Wide Web Consortium Recommendation states that UTF-8 should be used. Not doing so may introduce incompatibilites.

Parameters:
    s the String to decode 
    enc The name of a supported character encoding. 
Returns:
    the newly decoded String 
Throws:
    UnsupportedEncodingException - If character encoding needs to be consulted, but named character encoding is not supported 
Since:
    1.4 
See Also:
    URLEncoder.encode(java.lang.String, java.lang.String)

 

posted @ 2014-12-29 18:07  星辰之力  阅读(4962)  评论(0编辑  收藏  举报