此处为 Apache POI 4.x。我看到有两种类型的 Workbook
实现:
- HSSF 工作簿
- XSSF 工作簿
我需要编写一个 Java 8 应用程序,用于读取扩展名为“.xls
”(XLS) 或“.xlsx
”(XLSX) 的 Excel 工作表。意思是,以“旧”(2003 年之前)格式或较新格式保存的 Excel 文件。
假设我对 XLS 文件使用 HSSF,对 XLSX 文件使用 XSSF 是否安全?或者那里的映射逻辑有点复杂? This answer似乎表明我是正确的,但这并没有让我完全确定我理解 HSSF 与 XSSF 的映射和“何时使用”逻辑。
我已经查阅了 POI 文档,但始终找不到明确的答案。
最佳答案
HSSF(org.apache.poi.hssf.usermodel
包)适用于XLS文件格式
XSSF(org.apache.poi.xssf.usermodel
包)适用于 XLSX 文件格式(较新的格式)
两个包(xssf 和 hssf)中的模型类实现 org.apache.poi.ss.usermodel
中的通用接口(interface)包裹。因此,您可能可以使用 ss
编写代码包,它将与 xssf 或 hssf 上的抽象一起使用。
关于java - Apache POI HSSF/XSSF 到 XLS/XLSX 的映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58883341/