zoukankan      html  css  js  c++  java
  • Apache POI

    文档来源:https://www.yiibai.com/apache_poi/

    POI

    什么是Apache POI?

    Apache POI是一种流行的API,它允许程序员使用Java程序创建,修改和显示MS Office文件。这由Apache软件基金会开发使用Java分布式设计或修改Microsoft Office文件的开源库。它包含类和方法对用户输入数据或文件到MS Office文档进行解码。

    Apache POI的API,它是至关重要的工作,使用Java程序操作Excel文件有下面几个类和方法。

    工作簿

    这是创建或维护Excel工作簿的所有类的超接口。它属于org.apache.poi.ss.usermodel包。是实现此接口的两个类,如下所示:

    • HSSFWorkbook : 这个类有读取和.xls 格式和写入Microsoft Excel文件的方法。它与微软Office97-2003版本兼容。

    • XSSFWorkbook : 这个类有读写Microsoft Excel和OpenOffice的XML文件的格式.xls或.xlsx的方法。它与MS-Office版本2007或更高版本兼容。

    HSSFWorkbook

    它是在org.apache.poi.hssf.usermodel包的高层次的类。它实现了Workbook 接口,用于Excel文件中的.xls格式。下面列出的是一些本类下的方法和构造函数。

    类的构造函数

    S.No.构造函数和说明
    1

    HSSFWorkbook()

    从头开始创建一个新的HSSFWorkbook对象时。

    2

    HSSFWorkbook(DirectoryNode directory, boolean preserveNodes)

    创建一个特定的目录中一个新的HSSFWworkbook对象。

    3

    HSSFWorkbook(DirectoryNode directory, POIFSFileSystem fs, boolean preserveNodes)

    给定一个POIFSFileSystem对象和特定的目录中,它创建了一个SSFWorkbook对象读取指定的工作簿。

    4

    HSSFWorkbook(java.io.InputStream s)

    创建使用输入流中的新HSSFWorkbook对象时。

    5

    HSSFWorkbook(java.io.InputStream s, boolean preserveNodes)

    构建在输入流的POI文件系统。

    6

    HSSFWorkbook(POIFSFileSystem fs)

    使用POIFSFileSystem对象构造的新HSSFWorkbook对象时。

    7

    HSSFWorkbook(POIFSFileSystem fs, boolean preserveNodes)

    给定一个POIFSFileSystem对象时,它会创建一个新的HSSFWorkbook对象时读取指定的工作簿。

    这些构造内的常用参数:

    • directory : 这是从POI文件系统处理的目录。

    • fs :它是包含簿流该POI的文件系统。

    • preservenodes : 这是决定是否保留其他节点像宏的可选参数。它消耗大量的内存,因为它存储在内存中的所有POIFileSystem(如果设置)。

    注意:HSSFWorkbook类包含了许多方法;然而,它们仅与XLS格式兼容。在本教程中,重点是在Excel文件格式的最新版本。因此,HSSFWorkbook类的方法,这里没有列出。如果需要这些类的方法,那么请参照POI-HSSFWorkbook类API在 https://poi.apache.org/apidocs/org/apache/poi/hssf/usermodel/HSSFWorkbook.html

    XSSFWorkbook

    它是用于表示高和低层次Excel文件格式的类。它属于org.apache.xssf.usemodel包,并实现Workbook接口。下面列出的是这个类的方法和构造函数。

    类的构造函数

    S.No.构造函数和说明
    1

    XSSFWorkbook()

    从头开始创建一个新的XSSFworkbook对象。

    2

    XSSFWorkbook(java.io.File file)

    构造从给定文件中的XSSFWorkbook对象。

    3

    XSSFWorkbook(java.io.InputStream is)

    构造一个XSSFWorkbook对象,通过缓冲整个输入流到内存中,然后为它打开一个OPCPackage对象。

    4

    XSSFWorkbook(java.lang.String path)

    构建一个给定文件的完整路径的XSSFWorkbook对象。

    类方法

    S.No.方法及描述
    1

    createSheet()

    创建一个XSSFSheet本工作簿,将其添加到表,并返回高层表示。

    2

    createSheet(java.lang.String sheetname)

    创建此工作簿的新表,并返回高层表示。

    3

    createFont()

    创建一个新的字体,并将其添加到工作簿的字体表。

    4

    createCellStyle()

    创建一个新的XSSFCellStyle并将其添加到工作簿的样式表。

    5

    createFont()

    创建一个新的字体,并将其添加到工作簿的字体表。

    6

    setPrintArea(int sheetIndex, int startColumn, int endColumn, int startRow,int endRow)

    设置一个给定的表按照指定参数的打印区域。

    对于此类的其余的方法,请参阅完整的API文档:http://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFWorkbook.html. 列出了所有方法。

    Sheet

    Sheet是在org.apache.poi.ss.usermodel包的接口,它是创建具有特定名称的高或低级别的电子表格的所有类的超接口。电子表格的最常见的类型是工作表,它被表示为单元的网格。

    HSSFSheet

    这是在org.apache.poi.hssf.usermodel包的类。它可以创建Excel电子表格,它允许在sheet 方式和表数据格式。

    类的构造函数

    S.No.构造函数及描述
    1

    HSSFSheet(HSSFWorkbook workbook)

    创建新HSSFSheet通过调用HSSFWorkbook从头开始创建一个表。

    2

    HSSFSheet(HSSFWorkbook workbook, InternalSheet sheet)

    创建HSSFSheet表示给定表对象。

    XSSFSheet

    这是代表了Excel电子表格的高级别代表的一类。这在org.apache.poi.hssf.usermodel包下。

    类的构造函数

    S.No.构造函数及描述
    1

    XSSFSheet()

    创造了新的XSSFSheet- 调用XSSFWorkbook从头开始创建一个表。

    2

    XSSFSheet(PackagePart part, PackageRelationship rel)

    创建XSSFSheet表示给定包的一部分和关系。

    类方法

    S.No.方法和描述
    1

    addMergedRegion(CellRangeAddress region)

    添加单元的合并区域(因此这些单元格合并形成一个)。

    2

    autoSizeColumn(int column)

    调整列宽,以适应的内容。

    3

    iterator()

    此方法是用于rowIterator()的别名,以允许foreach循环

    4

    addHyperlink(XSSFHyperlink hyperlink)

    注册超链接的集合中的超链接此工作表格上

    对于此类的其余的方法,请参阅完整的API在:
    https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFSheet.html.

    这是在org.apache.poi.ss.usermodel包的接口。它是用于一排的电子表格的高层表示。它是代表了POI库的行所有类的超接口。

    XSSFRow

    这是在org.apache.poi.xssf.usermodel包的类。它实现了Row接口,因此它可以在电子表格中创建行。下面列出的是这个类在方法和构造函数。

    类方法

    S.No.描述
    1

    createCell(int columnIndex)

    创建新单元行并返回。

    2

    setHeight(short height)

    设置短单位的高度。

    对于此类的其余的方法,参考如下链接:
    https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFRow.html

    单元格

    这是在org.apache.poi.ss.usermodel包的接口。它是代表了单元在电子表格中的行中的所有类的超接口。

    单元格可以使用各种属性,例如空白,数字,日期,错误等单元格被添加到一个行之前应具有(基于0)自己的编号。

    XSSFCell

    这是在 org.apache.poi.xssf.usermodel 包的类。它实现了单元格界面。它是单元在电子表格中的行的一个高层次的表示。

    字段摘要

    下面列出的是一些XSSFCell类的字段以及它们的描述。

    单元格类型描述
    CELL_TYPE_BLANK 代表空白单元格
    CELL_TYPE_BOOLEAN 代表布尔单元(true或false)
    CELL_TYPE_ERROR 表示在单元的误差值
    CELL_TYPE_FORMULA 表示一个单元格公式的结果
    CELL_TYPE_NUMERIC 表示对一个单元的数字数据
    CELL_TYPE_STRING 表示对一个单元串(文本)

    类方法

    S.No.描述
    1

    setCellStyle(CellStyle style)

    为单元格设置样式。

    2

    setCellType(int cellType)

    设置单元格的类型(数字,公式或字符串)。

    3

    setCellValue(boolean value)

    设置单元格一个布尔值

    4

    setCellValue(java.util.Calendar value)

    设置一个日期值的单元格。

    5

    setCellValue(double value)

    设置为单元格的数值。

    6

    setCellValue(java.lang.String str)

    设置为单元格的字符串值。

    7

    setHyperlink(Hyperlink hyperlink)

    分配超链接到该单元格。

    对于这个类的剩余方法和字段,请访问以下链接查看详细:
    https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFCell.html

    XSSFCellStyle

    这是在org.apache.poi.xssf.usermodel包的类。它将提供关于在电子表格的单元格中的内容的格式可能的信息。它也提供了用于修正该格式的选项。它实现了CellStyle接口。

    字段摘要

    下表列出了从CellStyle接口继承一些字段。

    字段名称字段描述
    ALIGN_CENTER 中心对齐单元格内容
    ALIGN_CENTER_SELECTION 中心选择水平对齐方式
    ALIGN_FILL 单元格适应于内容的大小
    ALIGN_JUSTIFY 适应单元格内容的宽度
    ALIGN_LEFT 左对齐单元格内容
    ALIGN_RIGHT 右对齐单元格内容
    BORDER_DASH_DOT 使用破折号和点单元格样式
    BORDER_DOTTED 用虚线边框的单元格样式
    BORDER_DASHED 用虚线边框的单元格样式
    BORDER_THICK 厚厚的边框单元格样式
    BORDER_THIN 薄边框的单元格样式
    VERTICAL_BOTTOM 对齐单元格内容的垂直下方
    VERTICAL_CENTER 对齐单元格内容垂直居中
    VERTICAL_JUSTIFY 对齐和垂直对齐的单元格内容
    VERTICAL_TOP 顶部对齐为垂直对齐

    类的构造函数

    S.No.构造函数及描述
    1

    XSSFCellStyle(int cellXfId, int cellStyleXfId, StylesTable stylesSource, ThemesTable theme)

    创建一个单元格样式,从所提供的部分

    2

    XSSFCellStyle(StylesTable stylesSource)

    创建一个空的单元样式

    类方法

    设置边框的类型为单元格的底部边界

    S.No方法及描述
    1

    setAlignment(short align)

    设置单元格为水平对齐的类型

    2

    setBorderBottom(short border)

    3

    setBorderColor(XSSFCellBorder.BorderSide side, XSSFColor color)

    选定的边框颜色

    4

    setBorderLeft(Short border)

    设置边界的类型单元格的左边框

    5

    setBorderRight(short border)

    设置边框的类型为单元格的右边界

    6

    setBorderTop(short border)

    设置边界的类型的单元上边框

    7

    setFillBackgroundColor(XSSFColor color)

    设置表示为XSSFColor值背景填充颜色。

    8

    setFillForegroundColor(XSSFColor color)

    设置表示为XSSFColor的值前景填充颜色。

    9

    setFillPattern(short fp)

    指定单元格的填充信息模式和纯色填充单元。

    10

    setFont(Font font)

    设置此样式的字体。

    11

    setRotation(short rotation)

    设置的旋转为在单元格中文本的程度。

    12

    setVerticalAlignment(short align)

    设置单元类型为垂直取向。

    对于这个类剩下的方法和字段,通过以下链接:
    https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFCellStyle.html

    HSSFColor

    这是在org.apache.poi.hssf.util包的类。它提供了不同的颜色作为嵌套类。通常这些嵌套类是使用自己的索引来表示。它实现了Color接口。

    嵌套类

    所有嵌套类这个类是静态的,每个类都有其索引。这些嵌套色类用于单元格格式,如单元格内容,边框,前景和背景。下面列出了一些的嵌套类。

    S.No.类名(颜色)
    1 HSSFColor.AQUA
    2 HSSFColor.AUTOMATIC
    3 HSSFColor.BLACK
    4 HSSFColor.BLUE
    5 HSSFColor.BRIGHT_GREEN
    6 HSSFColor.BRIGHT_GRAY
    7 HSSFColor.CORAL
    8 HSSFColor.DARK_BLUE
    9 HSSFColor.DARK_GREEN
    10 HSSFColor.SKY_BLUE
    11 HSSFColor.WHITE
    12 HSSFColor.YELLOW

    类方法

    这个类的只有一个方法是很重要的,并且用于获取索引值。

    S.No.方法和描述
    1

    getIndex()

    这种方法被用来获得一个嵌套类的索引值

    对于其余的方法和嵌套类,请参阅以下链接:
    https://poi.apache.org/apidocs/org/apache/poi/hssf/util/HSSFColor.html.

    XSSFColor

    这是在org.apache.poi.xssf.usermodel包的类。它是用来表示在电子表格中的颜色。它实现了颜色的接口。下面列出的是它的一些方法和构造函数。

    类的构造函数

    S.No.Constructor and 描述
    1

    XSSFColor()

    创建XSSFColor的新实例。

    2

    XSSFColor(byte[] rgb)

    创建XSSFColor使用RGB的新实例。

    3

    XSSFColor(java.awt.Color clr)

    创建XSSFColor使用Color类从AWT包的新实例。

    类方法

    S.No.方法和描述
    1

    setAuto(boolean auto)

    设置一个布尔值,表示ctColor是自动的,系统ctColor依赖。

    2

    setIndexed(int indexed)

    设置索引ctColor值系统ctColor。

    对于其余的方法,请访问以下链接:
    https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFColor.html.

    XSSFFont

    这是在org.apache.poi.xssf.usermodel包的类。它实现了Font接口,因此它可以处理工作簿中不同的字体。

    类的构造函数

    S.No.构造函数和描述
    1

    XSSFFont()

    创建一个新的XSSFont实例。

    类方法

    S.No.方法和描述
    1

    setBold(boolean bold)

    设置“bold”属性的布尔值。

    2

    setColor(short color)

    设置索引颜色的字体。

    3

    setColor(XSSFColor color)

    设置为标准Alpha RGB颜色值的字体颜色。

    4

    setFontHeight(short height)

    设置在点的字体高度。

    5

    setFontName(java.lang.String name)

    设置字体的名称。

    6

    setItalic(boolean italic)

    设置“italic”属性一个布尔值。

    对于其余的方法,通过以下链接:
    https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFFont.html.

    XSSFHyperlink

    这是在org.apache.poi.xssf.usermodel包的类。它实现了Hyperlink接口。它是用来连结设置为电子表格的单元格内容。

    字段

    属于此类的字段如下。这里,字段意味着使用超链接的类型。

    字段描述
    LINK_DOCUMENT 用于连接任何其他文件
    LINK_EMAIL 用于链接的电子邮件
    LINK_FILE 用于以任何格式链接任何其他文件
    LINK_URL 用来连接一个网页URL

    类方法

    S.No.方法及描述
    1

    setAddress(java.lang.String address)

    超链接地址。

    对于其余的方法,请访问以下链接:
    https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFHyperlink.html

    XSSFCreationHelper

    这是在org.apache.poi.xssf.usermodel包的类。它实现了CreationHelper接口。它被用作公式求值和设置超文本链接支持类。

    类方法

    S.No.方法和描述
    1

    createFormulaEvaluator()

    创建一个XSSFFormulaEvaluator例如,结果计算公式的单元格的对象。

    2

    createHyperlink(int type)

    Creates a new XSSFHyperlink.

    对于其余的方法,请参考以下链接:https://poi.apache.org/apidocs/org/apache/poi/xssf/usermodel/XSSFCreationHelper.html.

    XSSFPrintSetup

    这是在org.apache.poi.xsssf.usermodel包下的类。它实现了PrintSetup接口。它是用来设置打印页面大小,面积,选项和设置。

    类方法

    S.No.方法及说明
    1

    setLandscape(boolean ls)

    设置一个布尔值,允许或阻止横向打印。

    2

    setLeftToRight(boolean ltor)

    设置是否向左走向右或自上而下的顺序,同时打印。

    3

    setPaperSize(short size)

    设置纸张尺寸。

    对于其余的方法,请访问以下链接:https://poi.apache.org/apidocs/org/apache/poi/hssf/usermodel/HSSFPrintSetup.html

  • 相关阅读:
    模块化编程
    flex 弹性布局
    作用域与作用域链
    深入解读JavaScript面向对象编程实践
    javascript Null、Undefined 、NaN的联系与区别
    跨域常见解决方案
    Reverse Pairs
    315. Count of Smaller Numbers After Self
    2. Add Two Numbers
    657. Judge Route Circle
  • 原文地址:https://www.cnblogs.com/ooo0/p/8900746.html
Copyright © 2011-2022 走看看