源内容(英文)
POI 代表 "Poor Obfuscation Implementation"。Apache POI 是 Apache 基金会 提供的 API,它是不同 Java 库的集合。这些库为我们提供了读取、写入和操作各种 Microsoft 文件(如 Excel 表格、PowerPoint 和 Word 文件)的功能。它的首个版本于 2001 年 12 月 30 日 发布。
Apache POI 架构
Apache POI 拥有不同的类和方法来处理各种 MS Office 文档。
- POIFS 它代表 "Poor Obfuscation Implementation File System"(混淆实现文件系统)。该组件是所有其他 POI 元素的基础。它用于显式读取不同的文件。
- HSSF 它代表 "Horrible Spreadsheet Format"(糟糕的电子表格格式)。它用于读取和写入 .xls 格式的 MS-Excel 文件。
- XSSF 它代表 "XML Spreadsheet Format"(XML 电子表格格式)。它用于 .xlsx 文件格式的 MS-Excel 文件。
- HPSF 它代表 "Horrible Property Set Format"(糟糕的属性集格式)。它用于提取 MS-Office 文件的属性集。
- HWPF 它代表 "Horrible Word Processor Format"(糟糕的字处理格式)。它用于读取和写入 .doc 扩展名的 MS-Word 文件。
- XWPF 它代表 "XML Word Processor Format"(XML 字处理格式)。它用于读取和写入 .docx 扩展名的 MS-Word 文件。
- HSLF 它代表 "Horrible Slide Layout Format"(糟糕的幻灯片布局格式)。它用于读取、创建和编辑 PowerPoint 演示文稿。
- HDGF 它代表 "Horrible Diagram Format"(糟糕的图表格式)。它包含用于 MS-Visio 二进制文件的类和方法。
- HPBF 它代表 "Horrible Publisher Format"(糟糕的发布格式)。用于读取和写入 MS-Publisher 文件。
安装
根据项目的类型,我们可以通过两种方式来安装 Apache jar 文件:
- Maven 项目 如果项目是 Maven 项目,我们需要在项目的 pom.xml 文件中添加依赖。需要添加的依赖如下:
org.apache.poi
poi
3.12
org.apache.poi
poi-ooxml
3.12
- 在 Eclipse 中创建 Maven 项目并添加依赖的步骤
- 点击 File -> New -> Maven Project
- 出现一个新窗口,点击 Next
- 选择 maven-archetype-webapp
- 给项目命名
- 工作区中形成了一个项目,并自动出现了一个 pom.xml 文件
- 在 pom.xml 文件的现有结构中打开此文件
- 将 Apache POI 依赖复制到 pom.xml 文件中
- 复制 Maven 依赖并保存 pom.xml 文件后,Maven 依赖即被添加。
- 普通 Java 项目 如果不使用 Maven,我们可以从 POI 下载页面 下载 Maven jar 文件。至少需要包含以下 jar 文件才能运行示例代码:
> poi-3.10-FINAL.jar poi-ooxml-3.10-FINAL.jar commons-codec-1.5.jar poi-ooxml-schemas-3.10-FINAL.jar xml-apis-1.0.b2.jar stax-api-1.0.1.jar xmlbeans-2.3.0.jar dom4j-1.6.1.jar
- 请点击此 链接 查看如何在 Eclipse 中添加外部 jars。
类和方法
Workbook(工作簿) 它是所有创建或维护 Excel 工作簿的类的超接口。以下是实现此接口的两个类:
- HSSFWorkbook 它实现了 Workbook 接口,用于 .xls 格式的 Excel 文件。下面列出了该类下的一些方法和构造函数。
- 方法和构造函数
> HSSFWorkbook() HSSFWorkbook(DirectoryNode directory, boolean preserveNodes) HSSFWorkbook(DirectoryNode directory, POIFSFileSystem fs, boolean preserveNodes) HSSFWorkbook(java.io.InputStream s) HSSFWorkbook(java.io.InputStream s, boolean preserveNodes) HSSFWorkbook(POIFSFileSystem fs) HSSFWorkbook(POIFSFileSystem fs, boolean preserveNodes)
- 其中:directory – 它是要处理的 POI 文件系统目录。 fs – 它是 POI 文件系统