Excel 后缀竟成 “拦路虎”?POI 读取报错原因大揭秘

POI读取excel报错

由于有时候上传的是xls文件有时候上传的是xlsx文件,使用POIFSFileSystem来读取文件

java 复制代码
POIFSFileSystem poifsFileSystem;
try {
    poifsFileSystem = new POIFSFileSystem(new FileInputStream(file));
} catch (IOException e) {
    LOGGER.error("open xls file failure", e);
    throw new BusinessException(1, "打不开xls文件");
}

经常会遇到

vbnet 复制代码
The supplied data appears to be in the Office 2007+ XML. You are calling the part of POI that deals with OLE2 Office Documents. You need to call a different part of POI to process this data (eg XSSF instead of HSSF)

解决方法:

使用WorkbookFactory来读取excel文件

java 复制代码
Workbook workbook;
try {
    workbook = WorkbookFactory.create(new FileInputStream(file));
} catch (IOException e) {
    LOGGER.error("open xls file failure", e);
    throw new BusinessException(1, "打不开xls文件");
}

参考文献

相关推荐
SoleMotive.18 小时前
一个准程序员的健身日志:用算法调试我的增肌计划
python·程序员·健身·职业转型
万岳科技程序员小金21 小时前
多商户商城系统源码 + APP/小程序开发:技术架构与应用解
程序员·开源·源码·多商户商城系统源码·多商户商城小程序·多商户商城app开发·多商户商城平台开发
NAGNIP1 天前
程序员效率翻倍的快捷键大全!
前端·后端·程序员
阿里嘎多学长1 天前
2026-02-03 GitHub 热点项目精选
开发语言·程序员·github·代码托管
修己xj1 天前
山野的风,城市的窗:一位拾粪爷爷与我的时代之问
程序员
沈二到不行1 天前
【22-26】蜉蝣一日、入樊笼尔
程序员·ai编程·全栈
AI绘画哇哒哒1 天前
【干货收藏】深度解析AI Agent框架:设计原理+主流选型+项目实操,一站式学习指南
人工智能·学习·ai·程序员·大模型·产品经理·转行
程序员鱼皮3 天前
刚刚,Claude Opus 4.6 和 GPT-5.3-Codex 同时炸场!AI 编程要变天了
计算机·ai·程序员·互联网·软件开发
Stephen_Young4 天前
32岁程序员猝死:让我想起了我曾经的加班经历,庆幸自己还活着
程序员·工控
良许Linux4 天前
51单片机都有哪些优缺点
单片机·程序员·嵌入式·编程