Excel工具
基于 Apache POI 库的 Excel 文件操作,包括创建表单(FormWorkSheet)、创建表格(TableWorkSheet)和模板单元格(TemplateCell)的设置等功能。
Maven坐标
<dependency>
<groupId>com.ikingtech.platform</groupId>
<artifactId>sdk-excel</artifactId>
</dependency>
主要类说明
FormWorkSheet
andTableWorkSheet
这两个类继承自WorkSheet抽象类,均重写了抽象方法writeContent。它们用于编写具体的内容,比如在指定位置写入数据或者模板。
TemplateCell
这个类表示一个表格单元格的所有属性,包括开始列、开始行、结束列、结束行、内容、高度、宽度、布局等。
TemplateCellBuilder
此类用于创建并初始化TemplateCell实例,提供了一系列的链式调用方法,例如startRow()、endRow()、startColumn()等。其中包含对字体样式、大小、颜色、是否加粗、下划线、斜体以及位置等多种设置。
TemplateCellLayout
代表单元格的布局特性,包括字体大小、样式、颜色、是否加粗、是否有下划线、是否斜体、位置、背景颜色、边框等。
WorkSheet
它是一个抽象类,描述一个工作表的基本功能。包括header,template和data等属性。还有form()和table()方法用于创建表单和表格实例。
使用说明
<dependency>
<groupId>com.ikingtech.platform</groupId>
<artifactId>sdk-excel</artifactId>
</dependency>
- 创建工作表
表单(FormWorkSheet): WorkSheet<T> sheet = WorkSheet.form();
表格(TableWorkSheet):WorkSheet<T> sheet = WorkSheet.table();
- 设定模板
调用sheet.header()或者sheet.template()设定header或模板。
- 添加单元格到工作表
使用TemplateCellBuilder类创建单元格,然后通过sheet.cell(cell)方法添加到工作表中。
TemplateCell cell = TemplateCellBuilder.builder()
.startRow(0)
.endRow(0)
.startColumn(0)
.endColumn(0)
.height(20)
.width(10)
.fontStyle("宋体")
.fontSize(13)
.content("这是一个测试")
.build();
sheet.cell(cell);
- 添加数据到工作表
使用sheet.data(data)方法添加数据到工作表中,其中data是一个实现了Serializable接口的列表。
- 写入到文件
调用sheet.write(sheetName, outputStream)方法将表格写入到指定的输出流中,sheetName为表格名称,outputStream为要写入的流。例如:
OutputStream outputStream = new FileOutputStream("test.xlsx");
sheet.write("sheetName",outputStream);