文件下载的两种方式
2016-08-23 09:14
169 查看
(一)传统的下载方式
package com.ruide.action; import java.io.FileInputStream; import java.io.IOException; import java.io.OutputStream; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class DownLoadAction extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String filename=request.getParameter("filename"); filename=new String(filename.getBytes("ISO-8859-1"),"UTF-8"); String path=request.getRealPath("/files/"); path=path+"/"+filename; filename=new String (filename.getBytes(),"ISO-8859-1"); response.setHeader("Content-Disposition", "attachment;filename="+filename); //response.setContentType("application/x-download"); response.setContentType("application/x-download"); //下载 FileInputStream in=new FileInputStream(path);//本机上的 OutputStream out=response.getOutputStream();//网络流 int a=-1; if((a=in.read())!=-1){ out.write(a); } in.close(); out.close(); } }
SmartUpload 对象方式下载
package com.ruide.action; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.jspsmart.upload.SmartUpload; import com.jspsmart.upload.SmartUploadException; public class DownLoad1Action extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String filename=request.getParameter("filename"); String path=request.getRealPath("/files/"); filename=new String(filename.getBytes("ISO-8859-1"),"UTF-8"); path=path+"/"+filename; SmartUpload smt=new SmartUpload(); smt.setContentDisposition(null); smt.initialize(this.getServletConfig(),request,response); try { smt.downloadFile(path); } catch (SmartUploadException e) { e.printStackTrace(); } } }
相关文章推荐
- C#利用WebClient 两种方式下载文件
- JSP隐含对象response实现文件下载的两种方式
- 使用WebView实现文件下载的两种方式
- C#利用WebClient 两种方式下载文件
- AFNetworking从指定网址下载文件的两种方式总结
- 在javaweb中下载文件两种简单的方式
- AFNetworking从指定网址下载文件的两种方式总结 - 家柱
- java实现文件下载的两种方式
- 前端实现文件下载的两种方式
- SpringMVC中两种处理文件上传下载的方式.md
- struts2下载文件时两种实现方式
- Spring MVC - 两种文件下载方式
- JSP response对象实现文件下载的两种方式
- 两种方式文件下载
- 使用python和java两种方式来完成下载网页,并保存成文件,
- springmvc和servlet下的文件上传和下载(存文件目录和存数据库Blob两种方式)
- JSP程序中response对象实现文件下载的两种方式
- springmvc和servlet在上传和下载文件(保持文件夹和存储数据库Blob两种方式)
- C#利用WebClient 两种方式下载文件
- C#利用WebClient 两种方式下载文件(一)