使用Servlet实现页面下载文件

来源:互联网 发布:skycc软件怎么下载 编辑:程序博客网 时间:2024/06/04 23:04
//获取下载的图片String path = this.getServletContext().getRealPath("/1.png");//创建文件对象File file = new File(path);//读取文件的流InputStream is = new FileInputStream(file);//获取User-Agent的头信息String userAgent = request.getHeader("User-Agent");//判断是否是火狐浏览器if(userAgent.contains("Firefox")){//设置下载头    编码方式试用火狐浏览器response.setHeader("Content-Disposition", "attachment;filename="+new String ("中国.png".getBytes("UTF-8"),"ISO8859-1"));}else{//设置下载头    编码方式试用IE浏览器response.setHeader("Content-Disposition", "attachment;filename="+URLEncoder.encode("中国.png","UTF-8"));}//字节流ServletOutputStream os = response.getOutputStream();//缓冲区byte buffer[] = new byte[1024];//读取长度int len = 0;//直到读取完毕while((len = is.read (buffer))!=-1){os.write(buffer, 0, len);}//快速写入os.flush();//关闭流os.close();is.close();

1 0