Invalid header signature; read 0x6D78206C6D74683C, expected 0xE11AB1A1E011CFD0(错误excel文件导入头)

1. ​ 报错来源:

用 POI 读取 Excel
文件时报错,报错信息org.apache.poi.poifs.filesystem.NotOLE2FileException:
Invalid header signature; read 0x6D78206C6D74683C, expected
0xE11AB1A1E011CFD0 - Your file appears not to be a valid OLE2
document,报错提示是读取的文件头信息不对。

出现在:

FileInputStream in = new FileInputStream("path");
POIFSFileSystem fs = new POIFSFileSystem(in);  
HSSFWorkbook workbook =  new HSSFWorkbook(fs);

这一行:HSSFWorkbook workbook = new HSSFWorkbook(fs);

2. 出现原因:

可能是类似于将txt文件或者HTML等其它文件的后缀名直接改成xls,或者由其他软件导出成的Excel。即老系统excel文件导出可能采取了html模板导出,这种文件再重新作为excel读取导入会报读取的文件头信息不对错误。

3. 解决办法:

从文件下手,需要用Excel打开然后另存一份excel文件,这份excel文件就可以读取了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值