Java URL解码器无法按预期工作

时间:2011-10-11 22:32:44

标签: java url urldecode

我有一个简单的程序试图解码编码的URL。但由于某些原因,这似乎并没有起作用。有人会知道为什么会这样吗?我花了好几个小时但却无法弄明白。

以下是该计划:

import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;

public class DecodeTest {

public static void main(String[] args) {

    String encodedUrl = "aHR0cHM6Ly93d3cuYWUuY29tL3dlYi9teWFjY291bnQvYWNjb3VudF9ob21lLmpzcA";
    String decodedUrl = "";

    try {
        decodedUrl = URLDecoder.decode(encodedUrl, "UTF-8");
    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    }

    System.out.println("String: " + decodedUrl);
    }
}

输出如下:

 String: aHR0cHM6Ly93d3cuYWUuY29tL3dlYi9teWFjY291bnQvYWNjb3VudF9ob21lLmpzcA

这是相同的编码字符串。

3 个答案:

答案 0 :(得分:4)

您发送的字符串不是URL编码的,因此无法解码。你从哪里得到弦?

答案 1 :(得分:3)

你确定你不需要base64解码器吗?这是预期的结果。 URL编码/解码就像转换%20中的空格和类似的东西

%0D%0AGood+luck%28you%27ll+need+it%29 

进入

Good luck (you'll need it)

base64解码会给你

https://www.ae.com/web/myaccount/account_home.jsp

输入

答案 2 :(得分:0)

它正在做它应该做的事情。没有什么可以改变的。