5

我的系统使用 Apache-POI 来管理一些 xls 文件。现在我有近 300 个 xls 文件,但它们似乎是旧格式,所以我得到了这个例外:

提供的电子表格似乎是 Excel 5.0/7.0 (BIFF5) 格式。POI 仅支持 BIFF8 格式(来自 Excel 版本 97/2000/XP/2003)

有没有办法处理或自动将所有这些文件转换为 biff8 格式?

4

2 回答 2

7

将其转换为 OOXLS 格式,POI 支持 BIFF8 和更新的 OOXLS。下载官方微软转换器包:

http://www.microsoft.com/en-us/download/details.aspx?id=3

通过运行转换文件excelcnv.exe -oice <input file> <output file>。您可以尝试直接从您的代码作为外部程序运行它,或者创建一些批处理文件。社交 msdn 上的mrdivo有一个很好的解释

编辑

自 2018 年 6 月 21 日起,上述从 microsoft.com 下载的内容不再可用。但是,excelcnv.exe它是某些 Microsoft Office 安装的标准部分。已确认与 Office 2014 和 Office 2016 以及可能的其他版本一起部署。可以在以下位置找到:

C:\Program Files (x86)\Microsoft Office\root\Office16` (or `Office14`).
于 2013-07-31T08:46:25.340 回答
0

似乎 apache-POI 无法处理 BIFF5 格式。

您应该尝试改用 Java Excel API:http: //jexcelapi.sourceforge.net/

于 2012-10-09T15:26:08.803 回答