我的Java独立应用程序从用户获取一个URL(指向一个文件),我需要点击它并下载它.我面临的问题是我无法正确编码HTTP URL地址......
例:
URL: http://search.barnesandnoble.com/booksearch/first book.pdf
java.net.URLEncoder.encode(url.toString(), "ISO-8859-1");
Run Code Online (Sandbox Code Playgroud)
回报我:
http%3A%2F%2Fsearch.barnesandnoble.com%2Fbooksearch%2Ffirst+book.pdf
Run Code Online (Sandbox Code Playgroud)
但是,我想要的是
http://search.barnesandnoble.com/booksearch/first%20book.pdf
Run Code Online (Sandbox Code Playgroud)
(空间由%20取代)
我猜URLEncoder不是为了编码HTTP URL而设计的... JavaDoc说"用于HTML表单编码的实用程序类"......有没有其他方法可以做到这一点?
有没有人知道在没有编码的情况下可以在GET中使用的完整字符列表?目前我正在使用AZ az和0-9 ......但我希望找到完整列表.
我也有兴趣知道是否有针对中文,阿拉伯语网址的增加发布的规范(显然这将对我的问题产生重大影响)