Skip to content

Excel工具

基于 Apache POI 库的 Excel 文件操作,包括创建表单(FormWorkSheet)、创建表格(TableWorkSheet)和模板单元格(TemplateCell)的设置等功能。

Maven坐标

xml
<dependency>
    <groupId>com.ikingtech.platform</groupId>
    <artifactId>sdk-excel</artifactId>
</dependency>

主要类说明

  • FormWorkSheet and TableWorkSheet

    这两个类继承自WorkSheet抽象类,均重写了抽象方法writeContent。它们用于编写具体的内容,比如在指定位置写入数据或者模板。

  • TemplateCell

    这个类表示一个表格单元格的所有属性,包括开始列、开始行、结束列、结束行、内容、高度、宽度、布局等。

  • TemplateCellBuilder

    此类用于创建并初始化TemplateCell实例,提供了一系列的链式调用方法,例如startRow()、endRow()、startColumn()等。其中包含对字体样式、大小、颜色、是否加粗、下划线、斜体以及位置等多种设置。

  • TemplateCellLayout

    代表单元格的布局特性,包括字体大小、样式、颜色、是否加粗、是否有下划线、是否斜体、位置、背景颜色、边框等。

  • WorkSheet

    它是一个抽象类,描述一个工作表的基本功能。包括header,template和data等属性。还有form()和table()方法用于创建表单和表格实例。

使用说明

xml
<dependency>
    <groupId>com.ikingtech.platform</groupId>
    <artifactId>sdk-excel</artifactId>
</dependency>
  1. 创建工作表

表单(FormWorkSheet): WorkSheet<T> sheet = WorkSheet.form();

表格(TableWorkSheet):WorkSheet<T> sheet = WorkSheet.table();

  1. 设定模板

调用sheet.header()或者sheet.template()设定header或模板。

  1. 添加单元格到工作表

使用TemplateCellBuilder类创建单元格,然后通过sheet.cell(cell)方法添加到工作表中。

java
TemplateCell cell = TemplateCellBuilder.builder()
        .startRow(0)
        .endRow(0)
        .startColumn(0)
        .endColumn(0)
        .height(20)
        .width(10)
        .fontStyle("宋体")
        .fontSize(13)
        .content("这是一个测试")
        .build();
sheet.cell(cell);
  1. 添加数据到工作表

使用sheet.data(data)方法添加数据到工作表中,其中data是一个实现了Serializable接口的列表。

  1. 写入到文件

调用sheet.write(sheetName, outputStream)方法将表格写入到指定的输出流中,sheetName为表格名称,outputStream为要写入的流。例如:

java
OutputStream outputStream = new FileOutputStream("test.xlsx");
sheet.write("sheetName",outputStream);