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

Posted Angel挤一挤

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了POI导出excel文件,不生成中间文件,直接将内存中的数据创建对象下载到浏览器相关的知识,希望对你有一定的参考价值。

 不是从InputStream中read,然后outputStream再write

@RequestMapping("download4Excel")
    public void download4Excel(HttpServletResponse response){
        XSSFWorkbook workbook = new XSSFWorkbook();
        XSSFSheet sheet = workbook.createSheet("测试Sheet");
        
        sheet.setColumnWidth(1, 7000);
        Row row = sheet.createRow(0);
        Cell cell = row.createCell(1);
        cell.setCellValue("德玛西亚");
        
        
        try {
            
            response.setContentType("multipart/form-data");
            response.setHeader("Content-Disposition", "attachment;filename="+ URLEncoder.encode("测试生成Excel文件.xlsx", "utf-8"));
            OutputStream outputStream = response.getOutputStream();
            workbook.write(outputStream);
            outputStream.close();
            workbook.close();
            
        } catch (UnsupportedEncodingException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } 
        
    }
View Code

 

 

以上是关于POI导出excel文件,不生成中间文件,直接将内存中的数据创建对象下载到浏览器的主要内容,如果未能解决你的问题,请参考以下文章

POI实现大数据EXCLE导入导出,解决内存溢出问题

Java POI怎样判断导出的Excel数据是不是正确地保存到本地。考虑网络中断,客户不正确操作等因素。

如何通过java代码将access数据库表中的数据导出生成excel格式的文件,谢谢各位。

Springboot使用POI实现导出Excel文件示例

java poi操作Excel文件 生成的Excel文件为里面的内容为只读,不可以修改其内容。求解答。

poi导出Excel的奇怪问题