第一种: 设置 response.setHeader("Content-Disposition", "attachment; filename=" + java.net.URLEncoder.encode(fileName, "UTF-8"));这里将文件名编码成UTF-8的格式,就不会出现URL出错了。IE6下注意中文文字不能超过超过17个。
第二种:设置response.setHeader( "Content-Disposition", "attachment;filename=" + new String( fileName.getBytes("gb2312"), "ISO8859-1" ) );将中文名编码为ISO8859-1的方式。不过该编码只支持简体中文.
例子:
else if("photos".equals(action))
{
File file=new File("f://陈少军.jpg");
String ss=file.getName();
response.setCharacterEncoding("UTF-8");
response.setContentType("multipart/form-data;charset=Utf-8");
response.setHeader("Content-Disposition", "attachment;fileName="+java.net.URLEncoder.encode(ss,"UTF-8"));
// response.addHeader("content-type", "application/x-msdownload;");
// response.addHeader("Content-Disposition","attachment;filename="+ss);
// response.addHeader("content-length", "");
InputStream in=new FileInputStream(file);
OutputStream out=response.getOutputStream();
int len=0;
byte [] buf=new byte[1024];
while((len=in.read(buf))!=-1)
{
out.write(buf,0,len);
}
in.close();
out.close();
return null;
}
相关推荐
Struts2文件上传下载 上传为单个上传, 下载包括中文乱码的问题:前台传后台时中文乱码,下载时显示时中文乱码,以及URLEncoder
excel打开csv文件中文乱码问题,将乱码文件拖到此工具就可完成转码,正常显示中文。
我们在项目中在下载文件会出现中文乱码,这个文档可以很好的解决乱码问题
解决Lua文件反编译后汉字乱码问题。开发环境vs2013,语言c#
Struts2下载文件时中文乱码和空格处理
多文件上传例子,彻底解决中文乱码问题了。总结中文乱码问题如下: 1、所有页面都用UTF-8。 2、写过滤器,设置request.setCharacterEncoding("UTF-8")。 3、javascript脚本里用encodeURI(str)。 4、适当的时候,在...
文件下载,二进制流转换成文件 解决中文名乱码的问题
解决ultraeditor打开中文文件出现乱码的情况
文件下载response.setHeader()下载中文文件名乱码问题解决办法.pdf
本资源参考网上原版为存取英文字符的ini操作,未考虑中文乱码问题。而网上另外也有资料如何处理中文编码,例如转码为utf-8,存能解决乱码,取又出现问题。本资源我重新整理,用unicode完美解决中文乱码问题。用法: ...
Java实现文件下载并解决中文文件名乱码
下载文件提示框中文乱码,自己搜集的资料.是针对下子提示框中文文件名乱码
解决JAVA读取properties中文乱码问题
彻底解决Asp.net 文件下载时文件名的中文乱码和空格异常全球性技术难题 本文用 C# 代码解决了在目前四种流行浏览器中Asp.net 输出文件流时文件名的空格及中文字符乱码这两个问题。使用本文的代码,你将可以让 IE...
jsch-0.1.53 不支持修改编码格式,sftp.setFilenameEncoding("GBK");这样修改是不起作用的,所以必须修改源码。此处是修改源码后重新导出的jar包。
java导出excel文件并且下载到客户端(包括解决中文乱码)
JAVA反编译文件解决中文乱码问题
Struts实现文件下载中文乱码解决方案收藏
使用Docker部署ONLYOFFICE Document Server,打开文档,显示中文乱码的原因与设置默认字体为中文的解决方法。关于中文乱码问题,归根究底,是Ubuntu系统字体显示不像Windows一样中英双显
解决办法一 解决办法二 通过模板生成文件乱码解决方法