使用response实现文件下载功能
2014-07-07 21:25
387 查看
response.setContentType("text/html;charset=utf-8");
response.setCharacterEncoding("utf-8");
//获取绝对路径.通过ervletContext()
String path= this.getServletContext().getRealPath("/img/1.jpg");
//设置请求的头信息,第一参数:头的名称,第二参数:头值,URLEncoder.encode()转编码值
response.setHeader("content-disposition", "attachment;filename="+URLEncoder.encode(path.substring(path.lastIndexOf("\\")+1),"utf-8") );
FileInputStream in=new FileInputStream(path);
byte[] img=new byte[1024];
int length=0;
try {
while ((length=in.read(img, 0, img.length))!=-1) {
response.getOutputStream().write(img, 0, length);
}
} catch (Exception e) {
e.printStackTrace();
}finally{
in.close();
}
response.setCharacterEncoding("utf-8");
//获取绝对路径.通过ervletContext()
String path= this.getServletContext().getRealPath("/img/1.jpg");
//设置请求的头信息,第一参数:头的名称,第二参数:头值,URLEncoder.encode()转编码值
response.setHeader("content-disposition", "attachment;filename="+URLEncoder.encode(path.substring(path.lastIndexOf("\\")+1),"utf-8") );
FileInputStream in=new FileInputStream(path);
byte[] img=new byte[1024];
int length=0;
try {
while ((length=in.read(img, 0, img.length))!=-1) {
response.getOutputStream().write(img, 0, length);
}
} catch (Exception e) {
e.printStackTrace();
}finally{
in.close();
}
相关文章推荐
- 使用文件流下载文件功能实现 [原]
- 使用.net FtpWebRequest 实现FTP常用功能 上传 下载 获取文件列表 移动 切换目录 改名 .
- 使用C++实现功能下载文件
- xshell使用rz,sz指令实现文件的上传,下载功能
- 使用普通的Servlet实现文件下载功能
- 解决springmvc中文件下载功能中使用javax.servlet.ServletOutputStream out = response.getOutputStream();后运行出异常但结果正确的问题
- (二)使用libcurl实现获取目标文件大小, 下载进度显示, 断点续传等功能
- 使用Servlet实现下载文件的功能
- 使用struts2实现下载功能遇到的文件中文问题
- 使用HttpServletResponse实现下载功能
- 使用Servlet实现下载文件的功能
- 使用response处理中文乱码,实现文件下载
- 好记性不如烂笔头13-使用HttpServletResponse实现文件下载
- 使用angularjs实现下载文件的功能
- 一个使用微软Azure blob实现文件下载功能的实例-附带源文件
- 关于Qt使用QNetworkAccessManager下载文件(实现断点续传功能)
- 关于Qt使用QNetworkAccessManager下载文件(实现断点续传功能)
- ASP.NET使用Response.WriteFile(filename);实现 文件下载
- 使用struts2实现下载功能遇到的文件中文问题解决经验分享
- 关于使用LinkButton实现点击超链完成文件下载的功能