java.io.IOException: Invalid header signature; read 0xE011BDBFEFBDBFEF, expected 0xE11AB1A1E011CFD0

查网上的解释,这个表示poi读取excel(97-2003)的时候头文件被损坏了

本人环境:idea 2018.2.4

原因:使用了maven,而且为了配置profile,使用了resource,resource他会把它配置的路径下的文件过一遍,然后用pom定义的变量的值给替换掉,excel不存在替换变量的问题,但应该会检查,估计会打开的过程中出问题了,具体没有深究,网上也是这么说的。


解决方案1:一开始为了寻求简便,就把对应的xls文件直接在打好的war包里进行替换


但是这样搞的话偶尔在本地操作还行,等上了生产总不能这样搞。

查网上操作有这样的


但是放在我本地是不行的,会导致打包的时候xls文件没有打出来。

然后网上又说有单独加入nonFilteredFileExtensions,我试了下我本地,还是不行,导出的时候还是报一样的错。


后来我综合起来看,要把xls文件打包的时候打出来,还要避免maven打开的过程中出问题,就都配置起来

解决方案2:配置include和nonFilteredFileExtensions


重新编译打包,这样就能导出成功啦


参考链接:https://www.cnblogs.com/aishangyizhihu/p/4826629.html

你可能感兴趣的:(java.io.IOException: Invalid header signature; read 0xE011BDBFEFBDBFEF, expected 0xE11AB1A1E011CFD0)