首页 > 代码库 > jsp页面下载文件
jsp页面下载文件
.将创建的excel文档转换成需要输出的流:可以是文件流放在硬盘中,也可以是输出流输出到浏览器供下载。 ◆ 文件流:FileOutputStream
1 FileOutputStream fos = new FileOutputStream("F://workbook.xls");
2 workBook.write(fos);
3 fos.close();
◆ 输出流 :response.getOutputStream()
1 response.reset();
2 response.setContentType("application/vnd.ms-excel;charset=gbk");
3 response.setHeader("Content-Disposition", "attachment;filename=account.xls");
4 OutputStream out = response.getOutputStream();
5 workBook.write(out);
6 out.close();
◆ tip:
*response.reset();清除首部的空白行
* getResponse的getWriter()方法连续两次输出流到页面的时候,第二次的流会包括第一次的流,
* 所以可以使用response.reset或者resetBuffer的方法。
* resetBuffer方法与reset方法的区别是,头和状态码没有清除。
如果发现这样设置后浏览器端并没有弹出【文件另存为】选择路径窗口,请检查下前面代码是否出现:
1.response.setContentType("text/html;charset=UTF-8");//设置编码格式
2.PrintWriter out = response.getWriter();导致无法确定输出流
3、excel文件名为中文时乱码或者出现未知文件类型错误时,考虑用URLEncoder对文件名进行转码
1 String name = java.net.URLEncoder.encode(fileName, "utf-8");
2 response.setContentType("application/vnd.ms-excel;charset=utf-8");
3 response.setHeader("Content-Disposition", "attachment;filename="+name.toString()+".xls");
4 OutputStream out = response.getOutputStream();
5 workBook.write(out);
6 out.close();
jsp页面下载文件
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。