servlet文件下载

filename为下载的文件名,获得文件路径后,则下载

public class FileDownLoadServlet extends HttpServlet{
    
    @Override
    protected void service(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

		response.setContentType("text/html;charset=gb2312");
		String fileName = request.getParameter("fileName");
		String filePath = request.getSession().getServletContext().getRealPath("temp/")+ "/";
		response.reset();
		response.setContentType("APPLICATION/OCTET-STREAM");
		response.setHeader("Content-Disposition","attachment; filename="+fileName);
		FileInputStream fileInputStream = null;
		File file = null;
		ServletOutputStream out = response.getOutputStream();
		try{
			file = new File(filePath + fileName);
			fileInputStream = new FileInputStream(file);
			int i;
			 byte[] buff = new byte[1024];
			while ((i = fileInputStream.read(buff,0,buff.length)) != -1) {
				out.write(buff,0,i);
			}
			fileInputStream.close();
			out.close();
			
		}catch(java.lang.Exception e){
			e.printStackTrace();
		}finally{
			if(file.exists()){
				file.delete();
			}
		}
		

    }
    
  
}

猜你喜欢

转载自javafu.iteye.com/blog/1964508
今日推荐