4K Star 23.9K Fork 8.2K

GVPchinabugotech/hutool

 / 详情

Excel .xlsx导出到Mac本地提示“文件无法打开”

已完成
创建于  
2023-11-26 22:15

版本情况

JDK版本: java version "1.8.0_333"
hutool版本: 5.8.23(最新)

<!-- Hutool -->
<dependency>
  <groupId>cn.hutool</groupId>
  <artifactId>hutool-all</artifactId>
  <version>5.8.23</version>
</dependency>

问题描述(包括截图)

打开导出的.xlsx文件提示“文件无法打开”
警告
无法打开

代码:

ExcelWriter writer = ExcelUtil.getWriter(true);
        writer.write(rows, true);
        ServletOutputStream out=response.getOutputStream();
        response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8");
        response.setHeader("Content-Disposition","attachment;filename=test.xlsx");

        writer.flush(out, true);
        // 关闭writer,释放内存
        writer.close();
        //此处记得关闭输出Servlet流
        IoUtil.close(out);

但是如果直接把.xlsx导入到本地磁盘没问题,写入流就有问题。
已经排查过接口文档中提到的以下2点,都不是导致该问题的原因

  • Maven项目中Excel保存于ClassPath中(src/main/resources下)宏替换导致被破坏;
  • Excel打开提示文件损坏,WPS可以打开。这是Excel的安全性控制导致的,解决办法见...

导出xlsx文件,照抄接口文档https://www.hutool.cn/docs/#/poi/Excel生成-ExcelWriter?id=_6-写出到客户端下载(写出到servlet)

评论 (2)

Jason Wu 创建了任务 1年前
阿超 负责人设置为阿超 1年前
阿超 计划截止日期设置为2023-12-03 1年前
阿超 关联分支设置为v5-dev 1年前
Jason Wu 任务状态待办的 修改为已关闭 1年前
展开全部操作日志

不客气

Jason Wu 任务状态Closed 修改为Done 1年前

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(2)
Jason Wu-co-stack 7413431 vampireachao 1613450829
Java
1
https://gitee.com/chinabugotech/hutool.git
git@gitee.com:chinabugotech/hutool.git
chinabugotech
hutool
hutool

搜索帮助