//下载
response.setContentType("application/x-msdownload");
String filename = "测试.zip";
String iso_filename = SysParameter.parseGBK(filename);
response.setHeader("Content-Disposition",
"attachment;filename=" + iso_filename);
ServletOutputStream op = response.getOutputStream();
op.write(ab);
op.flush();
op.close();
SysParameter.parseGBK 方法:
// 将GBK字符转化为ISO码
public static String parseGBK(String sIn) {
if (sIn == null || sIn.equals(""))
return sIn;
try {
return new String(sIn.getBytes("GBK"), "ISO-8859-1");
} catch (UnsupportedEncodingException usex) {
return sIn;
}
}
② java文件下载改名
要重新设置contentType,如application/octet-stream,再加版一个权filename
filename="XXXXX.txt";
response.setHeader("Content-Disposition", "attachment; filename="+filename);
③ java下载文件的中文名 为什么要用 new String(fileName.getBytes("gb2312"),"iso8859-1");原因是什么
ISO8859-1是页面上数据传输的格式,
new String(fileName.getBytes("gb2312"),"iso8859-1");
gb2312是你java项目格式(根据实际项目变更),目的是为了将中文文件名正确显示在页面上。
④ java 下载文件设置文件名
怎么的下载方式、方法。
你在后台设置一个,
<%
response.setContentType(fileminitype);
response.setHeader("Location",filename);
response.setHeader("Cache-Control", "max-age=" + cacheTime);
response.setHeader("Content-Disposition", "attachment; filename=" + filename); //filename应该是编码后的(utf-8)
response.setContentLength(filelength);
OutputStream outputStream = response.getOutputStream();
InputStream inputStream = new FileInputStream(filepath);
byte[] buffer = new byte[1024];
int i = -1;
while ((i = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, i);
}
outputStream.flush();
outputStream.close();
inputStream.close();
outputStream = null;
%>
⑤ java下载,中文名称出现乱码问题
我不太清楚怎么回事,但是网络上的很多资源都支持英文,对中文的回支持有问题,很可能答是网页中的编码是GB2312*(大多的jsp和asp),也许你的电脑是UTF-8或则别的,这中问题和配置有很大的关系,建议不要使用中文
⑥ java文件下载不显示中文文件名怎么回事
response.addHeader("Content-Disposition", "attachment;filename="
+ new String(logname.getBytes("utf-8"), "ISO-8859-1"));
根据自己的变量名和编码 进行修改
Java是一门面向对象编程语言,不仅吸收了版C++语言的各种优点,还摒弃权了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。
⑦ java实现下载文件,如果文件名为中文,下载后内容为空,求解释!
你的path变量的值是怎么来的。如果只是中文名有问题,可以尝试用URLDecoder.decode来对文件名进行URL编码转换。你debug跟踪下在URL url=new URL(path);这句时,你的path是什么值,他是否可以访问。
⑧ java中的文件名可以以中文命名么
可以,但是不建议这么做
正常项目没有用中文命名的
工作的话肯定被骂