关于java中url编码的问题
今天遇到这样的问题。需要下载一个文件,该文件的url如下: hxxp://www.abc.com/view/img/%E7%BD%91%E4%B8%8A%E8%B4%AD%E7%89%A9.rar
此链接在浏览器下会重定向到别的网站。所以下载下来的文件并非我想要的。查了下原来是url编码后的文件名。那么要想下载就必须对这个编码进行解码。。。。。
程序很简单,java自带编解码的方法:
public class TestUrlCode {
public static void main(String[] args){
String keyWord = "hxxp://www.abc.com/view/img/%E9%BB%91%E7%99%BD%E6%97%A0%E5%B8%B8.rar
“;
try {
keyWord = URLDecoder.decode(keyWord, "UTF-8");
System.out.println(keyWord);
String urlStr = URLEncoder.encode("黑白无常", "UTF-8");
System.out.println(urlStr);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
结果 : hxxp://www.abc.com/view/img/黑白无常.rar
%E9%BB%91%E7%99%BD%E6%97%A0%E5%B8%B8
对比来看已经正确的将编码转换过来了---
相关文档:
【人物小传】
James Gosling (1955.5.19-)加拿大出生的程序员,美国工程院院士。以“Java 技术之父”而闻名于世。他是Java 技术的创始人,亲手设计了Java语言,并开发了Java编译器和Java虚拟机,使Java成为了世界上最流行的开发语言。
James Gosling先生于1977年获得加拿大卡尔加里大学计算机科学学士学 ......
从网络摘抄到的解决方法——
解决方法二:
连接mysql时(无论在从mysql读还是取数据的情况),指定使用的编码方式为utf-8,具体代码如下
//装载mysql-jdbc驱动
Class.forName("com.mysql.jdbc.Driver" ......
JAVA Calendar详解
(在文章的最后,将会介绍Date类,如果有兴趣,可以直接翻到最后去阅读)
究竟什么是一个 Calendar 呢?中文的翻译就是日历,那我们立刻可以想到我们生活中有阳(公)历、阴(农)历之分。它们的区别在哪呢?
比如有:
月份的定义 - 阳`(公)历 一年12 个月,每个月的天数各不同;阴(农)历,每个月固定28 ......
这都是我学习JAVA亲身经历的心得,今天花了一个多小时总结出来希望对大家有一定的帮助。如果如总结不妥,请指出和批评!为学习JAVA的初学者铺条学习JAVA的道路
首先大家要明确一点,外面招聘JAVA的,主要是指的J2EE,也就是BS结构(浏览器和服务器结构)JAVA的之所以火起来真是因为BS结构,并不在CS结构,所以那种大型网游 ......
【IT168 技术文档】
/*
网页中的表单使用POST方法提交时,数据内容的类型是 application/x-www-form-urlencoded,这种类型会:
1.字符"a"-"z","A"-"Z","0"-"9",".","-","*",和"_" 都不会被编码;
2.将空格转换为加号 (+) ;
3.将非文本内容转换成"%xy"的形式,xy是两位16进制的数值;
4.在 ......