Apache POI
Apache POI 官方文档: https://poi.apache.org/apidocs/5.0/
Apache POI 是一个开源库,用于处理 Microsoft Office 格式的文件,例如 Excel (.xls, .xlsx), Word (.doc, .docx), PowerPoint (.ppt, .pptx) 等。通过 Apache POI 开发人员可以创建、修改和读取这些格式的文档,这对于自动化办公文档处理、报表生成、数据导出导入等场景非常有用。
Apache POI 包含多个子模块,每个子模块针对不同类型的 Microsoft Office 文件格式提供了相应的读写支持。以下是 Apache POI 中主要的几个子模块及其功能:
用于处理 Microsoft Excel 文件的Java API
HSSF:用于处理老版本的 Microsoft Excel 文件格式(.xls),即 Excel 97-2003 版本。
XSSF:用于处理新版的 Microsoft Excel 文件格式(.xlsx),这是基于 Office Open XML 标准的格式,适用于 Excel 2007 及以后版本。
SXSSF:是一个基于 XSSF 的轻量级实现,是 XSSF 的 API 兼容流式扩展,用于必须生成非常大的电子表格且堆空间有限时使用,特别适合处理大数据量的情况,它通过限制内存中的行数来优化性能。
用于处理 Microsoft Word 文件的 Java API
HWPF:用于处理 Microsoft Word (.doc) 文件格式,针对的是 Word 97-2003 版本。
XWPF:用于处理新版的 Microsoft Word (.docx) 文件格式,同样基于 Office Open XML 标准。
用于处理 Microsoft Powerpoint 文件的 Java API
HSLF:用于处理 Microsoft PowerPoint (.ppt) 文件格式,支持 PowerPoint 97-2003 版本。
XSLF:用于处理新版的 Microsoft PowerPoint (.pptx) 文件格式。
HDGF 和 XDGF - 用于访问 Microsoft Visio 格式文件的 Java API
HDGF:用于处理 Visio 二进制 (VSD) 文件格式。
XDGF:用于处理 Visio XML (VSDX) 文件格式。
POI 提供了 Java API 来读写基于 OLE 2 复合文档格式的文件
POIFS:OLE 2 复合文档格式的纯 Java 实现。
用于处理 Microsoft Publisher格式文件的 Java API
HPBF:支持处理 Microsoft Publisher 文件格式。
OOXML 相关子模块
OOXML 相关子模块:还包含一些其他支持 Office Open XML 标准相关组件的子模块,例如用于处理 Word 和 PowerPoint 中图表等元素的特殊处理。