题外话:通常在导入Excel文件时,会定义一套模板文件,让用户按此模板文件规定的内容进行填写,可以高效导入数据的同时,也利用Excel本身的功能,制定一些规则提示、有效性校验等,减少在代码中校验的繁琐(当然,为了保证数据的规范性,往往还应在代码中做再次校验,毕竟不按规则、偏不用模板导入的也确有人在)。
问题:通过下载的模板,打开文件时报错(wps 和 offlice-excel-2010 均提示文件损坏等...)
step--
1. 首先确定了响应内容编码格式已设置为 UTF-8
response.setCharacterEncoding(StandardCharsets.UTF_8.name());
2. 使用 office-excel 打开项目中的模板文件,另存为 - 工具 - web 选项 - 编码格式,修改为 UTF-8 或 GB2312 ,均不可行。
3. 可能是 Maven 在编译时,损坏了模板文件,尝试将此文件过滤掉,在 pom.xml (web模块)中加入以下配置
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<version>2.6</version>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<encoding>UTF-8</encoding>