- Apache POI Tutorial
- Apache POI - Home
- Apache POI - Overview
- Apache POI - Java Excel APIs
- Apache POI - Environment
- Apache POI - Core Classes
- Apache POI - Workbooks
- Apache POI - Spreadsheets
- Apache POI - Cells
- Apache POI - Fonts
- Apache POI - Formula
- Apache POI - Hyperlink
- Apache POI - Print Area
- Apache POI - Database
- Apache POI Resources
- Apache POI - Questions & Answers
- Apache POI - Quick Guide
- Apache POI - Useful Resources
- Apache POI - Discussion
Apache POI - 核心类
本章介绍了 Apache POI API 下的一些类和方法,它们对于使用 Java 程序处理 Excel 文件至关重要。
练习册
这是创建或维护 Excel 工作簿的所有类的超级接口。它属于org.apache.poi.ss.usermodel包。实现此接口的两个类如下 -
HSSFWorkbook - 此类具有读取和写入 .xls 格式的 Microsoft Excel 文件的方法。它与 MS-Office 版本 97-2003 兼容。
XSSFWorkbook - 此类具有读取和写入 .xls 或 .xlsx 格式的 Microsoft Excel 和 OpenOffice xml 文件的方法。它与 MS-Office 2007 或更高版本兼容。
HSSF工作簿
它是org.apache.poi.hssf.usermodel包下的高级类。它实现了Workbook接口,用于 .xls 格式的 Excel 文件。下面列出了该类下的一些方法和构造函数。
类构造函数
先生。 | 构造函数及描述 |
---|---|
1 | HSSF工作簿() 从头开始创建一个新的 HSSFWorkbook 对象。 |
2 | HSSFWorkbook(DirectoryNode目录,布尔值preserveNodes) 在特定目录中创建新的 HSSFWworkbook 对象。 |
3 | HSSFWorkbook(DirectoryNode目录,POIFSFileSystem fs,布尔值preserveNodes) 给定一个 POIFSFileSystem 对象和其中的特定目录,它会创建一个 SSFWorkbook 对象来读取指定的工作簿。 |
4 | HSSFWorkbook(java.io.InputStream s) 使用输入流创建新的 HSSFWorkbook 对象。 |
5 | HSSFWorkbook(java.io.InputStream s,布尔保留节点) 围绕输入流构建 POI 文件系统。 |
6 | HSSFWorkbook(POIFSFileSystem fs) 使用 POIFSFileSystem 对象构造一个新的 HSSFWorkbook 对象。 |
7 | HSSFWorkbook(POIFSFileSystem fs,布尔保留节点) 给定一个 POIFSFileSystem 对象,它会创建一个新的 HSSFWorkbook 对象来读取指定的工作簿。 |
这些构造函数中常用的参数是 -
目录- 这是要处理的 POI 文件系统目录。
fs - 它是包含工作簿流的 POI 文件系统。
keepnodes - 这是一个可选参数,决定是否保留其他节点(例如宏)。它消耗大量内存,因为它将所有 POIFileSystem 存储在内存中(如果设置)。
注意- HSSFWorkbook 类包含许多方法;但是它们仅与 xls 格式兼容。在本教程中,重点是最新版本的 Excel 文件格式。因此,这里不列出HSSFWorkbook的类方法。如果您需要这些类方法,请参阅https://poi.apache.org/apidocs/org/apache/poi/hssf/usermodel/HSSFWorkbook.html 上的 POI-HSSFWorkbook 类 API。
XSSF工作簿
它是一个用于表示高级和低级 Excel 文件格式的类。它属于org.apache.xssf.usemodel包并实现了Workbook接口。下面列出了该类下的方法和构造函数。
类构造函数
先生。 | 构造函数及描述 |
---|---|
1 | XSSF工作簿() 从头开始创建一个新的 XSSFworkbook 对象。 |
2 | XSSFWorkbook(java.io.File 文件) 从给定文件构造 XSSFWorkbook 对象。 |
3 | XSSFWorkbook(java.io.InputStream 是) 通过将整个输入流缓冲到内存中然后为其打开 OPCPackage 对象来构造 XSSFWorkbook 对象。 |
4 | XSSFWorkbook(java.lang.String路径) 在给定文件的完整路径的情况下构造一个 XSSFWorkbook 对象。 |
类方法
先生。 | 方法及说明 |
---|---|
1 | 创建表() 为此工作簿创建一个 XSSFSheet,将其添加到工作表中,并返回高级表示。 |
2 | createSheet(java.lang.String 工作表名称) 为此工作簿创建一个新工作表并返回高级表示。 |
3 | 创建字体() 创建新字体并将其添加到工作簿的字体表中。 |
4 | 创建单元格样式() 创建新的 XSSFCellStyle 并将其添加到工作簿的样式表中。 |
5 | 创建字体() 创建新字体并将其添加到工作簿的字体表中。 |
6 | setPrintArea(intsheetIndex,intstartColumn,intendColumn,intstartRow,intendRow) 根据指定参数设置给定纸张的打印区域。 |
对于此类的其余方法,请参阅完整的 API 文档:https: //poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFWorkbook.html。获取方法的完整列表。
床单
Sheet 是org.apache.poi.ss.usermodel包下的一个接口,它是所有创建具有特定名称的高级或低级电子表格的类的超级接口。最常见的电子表格类型是工作表,它表示为单元格网格。
HSSF表
这是org.apache.poi.hssf.usermodel包下的一个类。它可以创建 Excel 电子表格,并允许设置工作表样式和工作表数据的格式。
类构造函数
先生。 | 构造函数及描述 |
---|---|
1 | HSSFSheet(HSSFWorkbook工作簿) 创建由 HSSFWorkbook 调用的新 HSSFSheet 以从头开始创建工作表。 |
2 | HSSFSheet(HSSFWorkbook工作簿、InternalSheet工作表) 创建一个表示给定工作表对象的 HSSFSheet。 |
XSSF表
这是一个代表 Excel 电子表格高级表示的类。它位于org.apache.poi.hssf.usermodel包下。
类构造函数
先生。 | 构造函数及描述 |
---|---|
1 | XSSFSheet() 创建新的 XSSFSheet - 由 XSSFWorkbook 调用以从头开始创建工作表。 |
2 | XSSFSheet(PackagePart 部分, PackageRelationship rel) 创建一个表示给定包部分和关系的 XSSFSheet。 |
类方法
先生。 | 方法及说明 |
---|---|
1 | addMergedRegion(CellRangeAddress 区域) 添加单元格的合并区域(因此这些单元格形成一个)。 |
2 | autoSizeColumn(int 列) 调整列宽以适合内容。 |
3 | 迭代器() 该方法是 rowIterator() 的别名,用于允许 foreach 循环 |
4 | addHyperlink(XSSFHyperlink 超链接) 在此工作表上的超链接集合中注册超链接 |
对于此类的其余方法,请参阅完整的 API:https: //poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFSheet.html。
排
这是org.apache.poi.ss.usermodel包下的接口。它用于电子表格行的高级表示。它是表示 POI 库中的行的所有类的超级接口。
XSSFR行
这是org.apache.poi.xssf.usermodel包下的一个类。它实现了 Row 接口,因此它可以在电子表格中创建行。下面列出了该类下的方法和构造函数。
类方法
先生。 | 方法及说明 |
---|---|
1 | 创建单元格(int 列索引) 在行中创建新单元格并返回它。 |
2 | setHeight(短高度) 以短单位设置高度。 |
对于此类的其余方法,请按照给定的链接https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFRow.html
细胞
这是org.apache.poi.ss.usermodel包下的接口。它是表示电子表格行中的单元格的所有类的超级接口。
单元格可以采用各种属性,例如空白、数字、日期、错误等。单元格在添加到行之前应该有自己的数字(从 0 开始)。
XSSF细胞
这是org.apache.poi.xssf.usermodel包下的一个类。它实现了 Cell 接口。它是电子表格行中单元格的高级表示。
类方法
先生。 | 方法及说明 |
---|---|
1 | setCellStyle(CellStyle样式) 设置单元格的样式。 |
2 | setCellType(int 单元格类型) 设置单元格的类型(数字、公式或字符串)。 |
3 | setCellValue(布尔值) 设置单元格的布尔值。 |
4 | setCellValue(java.util.日历值) 设置单元格的日期值。 |
5 | setCellValue(双精度值) 设置单元格的数值。 |
6 | setCellValue(java.lang.String str) 设置单元格的字符串值。 |
7 | setHyperlink(Hyperlink 超链接) 分配一个超链接到该单元格。 |
对于此类的其余方法和字段,请访问以下链接 - https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFCell.html
XSSF单元格样式
这是org.apache.poi.xssf.usermodel包下的一个类。它将提供有关电子表格单元格中内容格式的可能信息。它还提供了修改该格式的选项。它实现了 CellStyle 接口。
类构造函数
先生。 | 构造函数及描述 |
---|---|
1 | XSSFCellStyle(int cellXfId, int cellStyleXfId, StylesTable stylesSource, ThemesTable 主题) 从提供的部件创建单元格样式 |
2 | XSSFCellStyle(StylesTable stylesSource) 创建一个空单元格样式 |
类方法
先生编号 | 方法及说明 |
---|---|
1 | setAlignment(短对齐) 设置单元格的水平对齐类型 |
2 | setBorderBottom(短边框) 设置单元格下边框的边框类型 |
3 | setBorderColor(XSSFCellBorder.BorderSide 边,XSSFColor 颜色) 设置选定边框的颜色 |
4 | setBorderLeft(短边框) 设置单元格左边框的边框类型 |
5 | setBorderRight(短边框) 设置单元格右边框的边框类型 |
6 | setBorderTop(短边框) 设置单元格上边框的边框类型 |
7 | setFillBackgroundColor(XSSFColor 颜色) 设置以 XSSFColor 值表示的背景填充颜色。 |
8 | setFillForegroundColor(XSSFColor 颜色) 设置表示为 XSSFColor 值的前景填充颜色。 |
9 | setFillPattern(短 fp) 指定图案和纯色单元格填充的单元格填充信息。 |
10 | setFont(字体font) 设置此样式的字体。 |
11 | setRotation(短旋转) 设置单元格中文本的旋转程度。 |
12 | setVerticalAlignment(短对齐) 设置单元格的垂直对齐方式。 |
对于此类中的其余方法和字段,请访问以下链接 - https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFCellStyle.html
HSSF颜色
这是org.apache.poi.hssf.util包下的一个类。它提供不同的颜色作为嵌套类。通常这些嵌套类使用它们自己的索引来表示。它实现了 Color 接口。
嵌套类
该类的所有嵌套类都是静态的,并且每个类都有其索引。这些嵌套颜色类用于单元格格式设置,例如单元格内容、边框、前景和背景。下面列出了一些嵌套类。
先生。 | 类别名称(颜色) |
---|---|
1 | HSSFColor.AQUA |
2 | HSSF彩色.自动 |
3 | HSSF颜色.黑色 |
4 | HSSF颜色.蓝色 |
5 | HSSFColor.BRIGHT_GREEN |
6 | HSSFColor.BRIGHT_GRAY |
7 | HSSF彩色.珊瑚色 |
8 | HSSFColor.DARK_BLUE |
9 | HSSFColor.DARK_GREEN |
10 | HSSFColor.SKY_BLUE |
11 | HSSF颜色.白色 |
12 | HSSF颜色.黄色 |
类方法
该类中只有一个方法很重要,即用于获取索引值。
先生。 | 方法及说明 |
---|---|
1 | 获取索引() 该方法用于获取嵌套类的索引值。 |
对于其余的方法和嵌套类,请参阅以下链接 - https://poi.apache.org/apidocs/org/apache/poi/hssf/util/HSSFColor.html
XSSF颜色
这是org.apache.poi.xssf.usermodel包下的一个类。它用于表示电子表格中的颜色。它实现了 Color 接口。下面列出了它的一些方法和构造函数。
类构造函数
先生。 | 构造函数及描述 |
---|---|
1 | XSSFColor() 创建 XSSFColor 的新实例。 |
2 | XSSFColor(字节[] rgb) 使用 RGB 创建 XSSFColor 的新实例。 |
3 | XSSFColor(java.awt.Color clr) 使用 awt 包中的 Color 类创建 XSSFColor 的新实例。 |
类方法
先生。 | 方法及说明 |
---|---|
1 | setAuto(布尔自动) 设置一个布尔值以指示 ctColor 是自动的并且系统 ctColor 是相关的。 |
2 | setIndexed(int 索引) 将索引 ctColor 值设置为系统 ctColor。 |
对于其余方法,请访问以下链接 - https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFColor.html
XSSFF字体
这是org.apache.poi.xssf.usermodel包下的一个类。它实现了 Font 接口,因此可以处理工作簿中的不同字体。
类构造函数
先生。 | 构造函数及描述 |
---|---|
1 | XSSFFont() 创建一个新的 XSSFont 实例。 |
类方法
先生。 | 方法及说明 |
---|---|
1 | setBold(布尔粗体) 为“粗体”属性设置布尔值。 |
2 | setColor(短颜色) 设置字体的索引颜色。 |
3 | setColor(XSSFColor 颜色) 以标准 Alpha RGB 颜色值设置字体颜色。 |
4 | setFontHeight(短高度) 设置字体高度(以磅为单位)。 |
5 | setFontName(java.lang.String 名称) 设置字体的名称。 |
6 | setItalic(布尔斜体) 为“斜体”属性设置布尔值。 |
对于其余方法,请访问以下链接 - https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFFont.html
XSSF超链接
这是org.apache.poi.xssf.usermodel包下的一个类。它实现了超链接接口。它用于设置电子表格单元格内容的超链接。
类方法
先生。 | 方法及说明 |
---|---|
1 | setAddress(java.lang.String 地址) 超链接地址。 |
对于其余方法,请访问以下链接 - https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFHyperlink.html
XSSF创建助手
这是org.apache.poi.xssf.usermodel包下的一个类。它实现了 CreationHelper 接口。它用作公式评估和设置超链接的支持类。
类方法
先生。 | 方法及说明 |
---|---|
1 | 创建公式评估器() 创建 XSSFFormulaEvaluator 实例,即计算公式单元格的对象。 |
2 | 创建超链接(int类型) 创建新的 XSSFHyperlink。 |
对于其余方法,请参阅以下链接 - https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFCreationHelper.html
XSSF打印设置
这是org.apache.poi.xsssf.usermodel包下的类。它实现了PrintSetup接口。它用于设置打印页面尺寸、区域、选项和设置。
类方法
先生。 | 方法及说明 |
---|---|
1 | setLandscape(布尔值 ls) 设置一个布尔值以允许或阻止横向打印。 |
2 | setLeftToRight(布尔值) 设置打印时是从左到右还是从上到下排序。 |
3 | setPaperSize(短尺寸) 设置纸张尺寸。 |
对于其余方法,请访问以下链接 - https://poi.apache.org/apidocs/org/apache/poi/hssf/usermodel/HSSFPrintSetup.html