java 下载项目的excel模板,文件损坏问题

本文介绍了在Java项目中遇到的Excel模板下载后损坏的情况,原因在于资源文件在打包过程中被编译导致损坏。解决办法是修改资源过滤配置,确保.xlsx文件不被过滤。重新编译或清理target文件即可修复。
摘要由CSDN通过智能技术生成

java 下载项目的excel模板,文件损坏问题

问题描述

最近在文件上传的功能,需要用到模板下载功能,excel模板放在了src/main/resources下,下载文件后发现损坏了

问题原因

刚开始以为是代码问题,后面排查发现是在打包项目后,target下打开excel,文件已经损坏了。是因为项目在编译或者打包过程中,会对excel进行编译,这样经过文件filter过滤一遍之后,excel文件就损坏了。

解决方案

修改过滤配置

<resources>
      <resource>
          <directory>src/main/resources</directory>
          <excludes>
              <exclude>**/*.xlsx</exclude>
          </excludes>
          <filtering>true</filtering>
      </resource>
      <resource>
          <directory>src/main/resources</directory>
          <includes>
              <include>**/*.xlsx</include>
          </includes>
          <filtering>false</filtering>
      </resource>
</resources>

其中第一段配置声明:在src/main/resources目录下,后缀是.xlsx的文件不是资源文件,其它的资源文件需要被过滤。而第二段配置声明:同样在src/main/resources目录下,后缀是.xlsx的文件是资源文件,但是不会被过滤。

配置完成后,如果重新编辑(打包)没有效果,需要maven claen 或者删除target文件重新编译一遍就可以啦。
参考:https://blog.csdn.net/master_yao/article/details/102494637

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值