首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

请问:J2SE URLDecode出错

2012-02-15 
请教:J2SE URLDecode出错import java.io.UnsupportedEncodingExceptionimport java.net.URLDecoderpubli

请教:J2SE URLDecode出错
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;

public class obscureStr {
public static void main(String[] args) {
String a = "你好 % 18.0000";
String b;
try {
b = URLDecoder.decode(a, "UTF-8");
System.out.println(b);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
}

出错:

Exception in thread "main" java.lang.IllegalArgumentException: URLDecoder: Illegal hex characters in escape (%) pattern - For input string: " 1"
at java.net.URLDecoder.decode(Unknown Source)
at obscureStr.main(obscureStr.java:9)


请问为什么呢?

[解决办法]

Java code
String a = "你好 % 18.0000";        String b;        try        {            b = URLEncoder.encode(a, "UTF-8");            System.out.println(b);            a = URLDecoder.decode(b, "UTF-8");            System.out.println(a);        }        catch (UnsupportedEncodingException e)        {            e.printStackTrace();        }
[解决办法]
探讨

zhouyuqwert,你好,能说一下原因吗?

[解决办法]
额 URLEncoder主要为了解决URL中存在特殊字符,比如& 空格 中文字符之类的 避免URL无法被正确解析

热点排行