0
点赞
收藏
分享

微信扫一扫

导出execl工具类,只需要传路径直接用

kmoon_b426 2022-03-16 阅读 24

导出单个Excel

   public static void downReportData(File file, HttpServletResponse response) {
        try (
                InputStream fis = new BufferedInputStream(new FileInputStream(file));
                OutputStream out = new BufferedOutputStream(response.getOutputStream())
        ){
            response.reset();
            response.setContentType("application/vnd.ms-excel");
            response.setHeader("Content-Disposition", "attachment;fileName=" + URLEncoder.encode(file.getName(), "UTF-8"));
            // buffer分片写,不然内存会爆
            byte[] buffer = new byte[1024 * 1024];
            int i;
            while ((i = fis.read(buffer)) != -1) {
                out.write(buffer, 0, i);
            }
        } catch (Exception e) {
            log.error("report data down occur exception,Reason{}", e.getMessage(), e);
            throw new BizException("report data down occur exception", CommonEnum.BUSSINESS_EXCEPTION.getCode());
        }
    }
举报

相关推荐

0 条评论