Apache POI - 概述

很多时候,需要软件应用程序来生成 Microsoft Excel 文件格式的报告。 有时,甚至希望应用程序接收 Excel 文件作为输入数据。 例如,为公司财务部门开发的应用程序需要在 Excel 中生成所有输出。

任何想要生成 MS Office 文件作为输出的 Java 程序员都必须使用预定义的只读 API 来执行此操作。


什么是 Apache POI?

Apache POI 是一种流行的 API,允许程序员使用 Java 程序创建、修改和显示 MS Office 文件。 它是由 Apache Software Foundation 开发和分发的开源库,用于使用 Java 程序设计或修改 Microsoft Office 文件。 它包含将用户输入数据或文件解码为 MS Office 文档的类和方法。


Apache POI 的组件

Apache POI 包含用于处理 MS Office 的所有 OLE2 复合文档的类和方法。 该 API 的组件列表如下所示。

  • POIFS (Poor Obfuscation Implementation File System) − b>POIFS (Poor Obfuscation Implementation File System) − 该组件是所有其他 POI 元素的基本要素。 它用于显式读取不同的文件。

  • HSSF (Horrible Spreadsheet Format) − 用于读写xls格式的MS-Excel文件。

  • XSSF (XML Spreadsheet Format) − 用于MS-Excel 的xlsx 文件格式。

  • HPSF (Horrible Property Set Format) − 它用于提取 MS-Office 文件的 属性集

  • HWPF (Horrible Word Processor Format) − 用于读写MS-Word 的doc 扩展文件。

  • XWPF (XML Word Processor Format) − 用于读写MS-Word的docx扩展文件。

  • HSLF (Horrible Slide Layout Format) − 它用于阅读、创建和编辑 PowerPoint 演示文稿。

  • HDGF (Horrible DiaGram Format) − 它包含 MS-Visio 二进制文件的类和方法。

  • HPBF (Horrible PuBlisher Format) − 它用于读取和写入 MS-Publisher 文件。

本教程将指导您完成使用 Java 处理 Excel 文件的过程。 因此,讨论仅限于 HSSF 和 XSSF 组件。

注意 − 旧版本的 POI 支持 doc、xls、ppt 等二进制文件格式。3.5 版以后,POI 支持 MS-Office 的 OOXML 文件格式,如 docx、xlsx、pptx 等。

与 Apache POI 一样,还有各种供应商提供的用于 Excel 文件生成的其他库。 其中包括 Aspose 的 Aspose cells for Java、Commons Libraries 的 JXL 和 Team Dev 的 JExcel