您的位置:首页 > 运维架构 > Tomcat

tomcat下 下载文件,下载地址含有中文,解决办法

2013-08-15 13:54 363 查看
(一)修改Tomcat配置文件方法:

找到Tomcat 目录,打开config/server.xml文件,添加一段代码即可。如红色的字体

  <Connector port="8080" 

             URIEncoding="utf-8" 

             protocol="HTTP/1.1" 

             connectionTimeout="20000" 

             redirectPort="8443" /> 

这段代码规定了Tomcat监听HTTP请求的端口号等信息,可以在这里添加一个属性:URIEncoding,将该属性值设置为UTF-8,即可让Tomcat不再以ISO-8859-1的编码处理get请求。更改后的代码(红色部分为新添加的代码) 

(二)Java代码实现
java.net.URLConnection和java.net.URL是远程读取文件重要的类。因为当前的文件名是中文

,如果直接构造字符串“http://localhost:8080/ahoa_test/filetemp/营业部执照.jpg”

读取远程文件必要要出错。需要对"中文文件.txt"进行编码,如下代码:

 
String name="营业部执照.jpg";
try {
name=java.net.URLEncoder.encode(name,"UTF-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(name);
输出结果为:%E8%90%A5%E4%B8%9A%E9%83%A8%E6%89%A7%E7%85%A7.jpg

浏览器中输入:
http://localhost:8080/ahoa_test/filetemp/%E8%90%A5%E4%B8%9A%E9%83%A8%E6%89%A7%E7%85%A7.jpg
得到结果:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐