在使用java下载文件时,可能会遇到无法识别该地址,有一个原因就是编码问题。
public void DownloadFile(URL theURL, String filePath,String fileFullName) throws IOException {
URLConnection con = theURL.openConnection();
if (fileFullName != null) {
byte[] buffer = new byte[4 * 1024];
int read;
String path = filePath + "/" + fileFullName;
File fileFolder = new File(filePath);
if(!fileFolder.exists()){
fileFolder.mkdir();
}
InputStream in = con.getInputStream();
FileOutputStream os = new FileOutputStream(path);
while ((read = in.read(buffer)) > 0) {
os.write(buffer, 0, read);
}
os.close();
in.close();
this.onStopFile(FILE_URL,"add",fileFullName,path);
}else{
Log.i("DownloadFile", "ERROR");
}
}
上边的
InputStream in = con.getInputStream();
就可能出错。
URL中本不应包含中文。
如果包含中文,应当把中文字符变成字节(利用GB18030或者UTF-8等编码)。
客户端转换的方式必须和服务器相同,比如服务器认为URL中的中文按照UTF-8编码,你的客户端就不能按照GB18030编码。
如果是Tomcat,你需要修改server.xml。上网用“tomcat URIEncoding”关键字搜索,修改一个叫URIEncoding的东西。
如果是客户端则可以如下修改
String urlS = "http://172.18.33.133:8080/zh/中文.jpg";
String host="http://172.18.33.133:8080/zh/";
String filename=java.net.Encoder.encode("中文.jpg","服务器编码。");
String urlS = host+filename;
URL theURL = new URL(urlS);
我就是这样解决的,有问题随时提出,不用谢!
分享到:
相关推荐
URL编码URL编码URL编码URL编码
vb url编码解码vb url编码解码vb url编码解码
C++URL编码和解码
JS实现URL编码转换中文
URL汉字编码问题(及乱码解决) URL汉字编码问题是Web开发中一个常见的问题,特别是在处理中文网址时。根据RFC 1738,URL只能使用英文字母、阿拉伯数字和某些标点符号,不能使用其他文字和符号。因此,如果URL中有...
今天写一个POST程序的时候有一段UNICODE字符串需要进行URL编码后进行提交。但是找遍了精易模块和百度都没有说有这这个命令 让Unicode字符串(易语言里面以字节集表示)直接进行正确的URL编码。所以就自己写了一个...
url编码转换器url编码转换器
搜集了网上的VBA函数,在excel中通过函数将汉字转为两种类型的URL编码,例如将 天空 二字转化为GB2312的“%CC%EC%BF%D5”或者是UTF-8的 “%E5%A4%A9%E7%A9%BA”。方便用于连接转换。VBA相关函数均来自网上,做了小小...
自动判断URL编码的方法。URL中包含编码的中文的时候,程序获取queryString需要根据url的不同编码,采用不同的解码方式,RequestQueryString方法能够自动识别url是用UTF-8编码还是GB2312编码,从而自动获取争取的值。...
自己写的,可能有bug,请大家一块学习 环境为PB12 函数(及参数) 作用 arraysort 对一维数组进行排序 decto 将十进制数字转成其它进制字符串 ...urlencode 将指定字符串以进行指定字符集url编码 涨价了,哈哈
URL编码表一览,可以对照查询,方便编码或者对编码进行反编码
url编码工具,进行gbk格式编码,内涵两个工具类,可以用两种方式编码
urlcode解码,HTTP:URL编码解码-A codec for URL encoding and decoding
URL解码-编码器URL解码-编码器URL解码-编码器URL解码-编码器
C#自动识别URL编码,相信你也遇到过编码乱码的问题,这里有最详细的资料,请看说明
可以在字符(ASCII、Unicode)和URL编码之间相互转换
这是一个URL编码转码工具,具体的功能和演示不发了。 实际功能是把网址转换为%hex 的形式。 1. 这个曾经是安全领域涉及到SQL注入破解屏蔽字符串的方法之一,但是现在已经很少用了 2. 这曾经是入侵大型网站(特别是...
jsp使用URL编码传递中文参数乱码问题
URL编码解码器。
url编码工具url编码工具