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文件");
}

参考文献

相关推荐
无限大62 小时前
为什么玩游戏需要独立显卡?——GPU与CPU的分工协作
后端·程序员
大模型教程4 小时前
全网首发!清北麻省顶级教授力荐的《图解大模型》中文版终于来了,碾压 95% 同类教材
程序员·llm·agent
AI大模型5 小时前
谷歌 Agents 白皮书中文版全网首发,堪称 AI 教材的天花板级神作
程序员·llm·agent
阿里嘎多学长8 小时前
2025-12-15 GitHub 热点项目精选
开发语言·程序员·github·代码托管
用户2345267009821 天前
Python构建AI Agent自主智能体系统深度好文
后端·程序员
Gopher1 天前
逝水流远,长忆当歌——我的2025
程序员
文心快码BaiduComate1 天前
给 AI 装上“员工手册”:如何用Rules 给文心快码 (Comate) 赋能提效?
前端·程序员·前端框架
程序员鱼皮1 天前
全面封禁 Cursor!又一家大厂出手了
程序员·ai编程·cursor
大模型教程1 天前
这份中国人写的大模型书,在外网竟然被刷爆了!
程序员·llm·agent