java导出excel 浏览器直接下载或者或以文件形式导出

Posted wang-yaz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java导出excel 浏览器直接下载或者或以文件形式导出相关的知识,希望对你有一定的参考价值。

 1 /**
 2  * excel表格直接下载
 3  */
 4 public static void exportExcelByDownload(HSSFWorkbook wb,HttpServletResponse httpServletResponse,String fileName) throws Exception {
 5     //响应类型为application/octet- stream情况下使用了这个头信息的话,那就意味着不想直接显示内容
 6     httpServletResponse.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE);
 7 
 8     //attachment为以附件方式下载
 9     httpServletResponse.setHeader("Content-Disposition","attachment;filename=" + URLEncoder.encode(
10             fileName + ".xls",
11             "utf-8"));
12     /**
13      * 代码里面使用Content-Disposition来确保浏览器弹出下载对话框的时候。
14      * response.addHeader("Content-Disposition","attachment");一定要确保没有做过关于禁止浏览器缓存的操作
15      */
16     httpServletResponse.setHeader("Cache-Control", "No-cache");
17     httpServletResponse.flushBuffer();
18 
19     wb.write(httpServletResponse.getOutputStream());
20     wb.close();
21 }
22 
23 /**
24  * excel以文件的形式导出
25  * @throws Exception
26  */
27 public static void exportExcelByFile(HSSFWorkbook wb,String fileName,String path) throws Exception{
28 
29     ByteArrayOutputStream stream = new ByteArrayOutputStream();
30     wb.write(stream);
31     FileOutputStream outputStream = new FileOutputStream(path + fileName);
32     outputStream.write(stream.toByteArray());
33     stream.close();
34     outputStream.close();
35 
36 }

 

以上是关于java导出excel 浏览器直接下载或者或以文件形式导出的主要内容,如果未能解决你的问题,请参考以下文章

Java POI实现excel大数据量下载

H5用安卓手机浏览器下载excel文件失败

POI导出excel文件,不生成中间文件,直接将内存中的数据创建对象下载到浏览器

怎么使用Java完成下载excel文件,服务器上excel文件是直接存在的而不是导出的(必须使用action)

Java POI导出Excel不弹框选择下载路径(下载文件不选择下载路径,默认) Chrome

jsp调用java方法导出excel为啥会弹出保存或下载的对话框,调用完之后直接将文件保存到指定路径下即可。