public class ExcelFileTemplet extends FileTemplet implements TempletAutoAddListSign<ExcelFileTemplet>
文件名:ExcelFileTemplet.java
用途: 指定Excel相关的模板
编码时间:2021年6月29日下午8:32:09
修改时间:2022年10月19日 上午8:13:53
Modifier and Type | Field and Description |
---|---|
protected String[] |
fields
用于缓存当前模板中字段集合转换成的字段数组
|
static String |
KEY_DATA
标记json中的data字段
|
static String |
KEY_FILTRATE
标记json中的filtrate字段
|
static String |
KEY_FREEZE_LEFT
标记json中的freezeLeft字段
|
static String |
KEY_FREEZE_TOP
标记json中的freezeTop字段
|
static String |
KEY_HIGH
标记json中的high字段
|
static String |
KEY_HORIZONTAL
标记json中的horizontal字段
|
static String |
KEY_NAME
标记json中的name字段
|
static String |
KEY_ROW_TEXT
标记json中的rowText字段
|
static String |
KEY_VERTICAL
标记json中的vertical字段
|
static String |
KEY_WIDE
标记json中的wide字段
|
static int |
UNORDERED_LIST_SIGN_TYPE_CODE
定义无序列表标记类型的默认编码
|
KEY_FIELD, KEY_INDEX, KEY_SAVE, templetJson
KEY_AUTO_LIST_SIGN, KEY_SIGN_CONTENT, KEY_SIGN_TYPE
Constructor and Description |
---|
ExcelFileTemplet(File saveFile) |
ExcelFileTemplet(String templetJsonText) |
Modifier and Type | Method and Description |
---|---|
ExcelFileTemplet |
addDataOption(String field,
List<String> optionList)
用于添加数据选项
|
ExcelFileTemplet |
addTitle(String field,
String name)
用于在模板中添加标题以及写入到excel中标题的名称
|
ExcelFileTemplet |
clearAutoListSign(String... fields)
该方法用于清除指定字段的自动添加列表标记
|
protected String[] |
getFields()
该方法用于判断当前模板的所有字段是否被转换成字段数组,若未转换,则将字段集合转化成字段数组进行存储,并将其返回
|
ExcelFileTemplet |
setAlignment(WriteExcelTempletFile.AlignmentType alignmentType,
String... fields)
用于设置字段指向的单元格的对齐方式
|
ExcelFileTemplet |
setContentBranch(int paragraphNum,
String... fields)
用于设置字段内容分行写入的段落数
|
ExcelFileTemplet |
setFiltrate(boolean isFiltrate)
用于设置是否在标题上加入筛选按钮,默认则存在筛选按钮
|
ExcelFileTemplet |
setFreeze(int topIndex,
int leftIndex)
用于设置需要冻结的单元格
|
ExcelFileTemplet |
setHigh(double high)
用于设置全局单元格的高度
|
ExcelFileTemplet |
setName(String name)
用于设置模板的名称
|
ExcelFileTemplet |
setOrderedListSign(OrderedListSignType orderedListSignType,
String... fields)
该方法用于对指定的一组字段设置有序列表标记
|
ExcelFileTemplet |
setTitleBackground(org.apache.poi.ss.usermodel.IndexedColors indexedColors,
String... fields)
该方法用于对指定的标题行添加背景颜色
|
ExcelFileTemplet |
setTitleBorder(org.apache.poi.ss.usermodel.BorderStyle borderStyle,
OrientationType[] orientationTypes,
String... fields)
该方法用于对指定的标题添加指定朝向的边框
|
ExcelFileTemplet |
setTitleBorder(org.apache.poi.ss.usermodel.BorderStyle borderStyle,
String... fields)
该方法用于对指定的标题添加所有朝向的边框
|
ExcelFileTemplet |
setUnorderedList(String signText,
String... fields)
该方法用于对指定的一组字段设置无序列表标记
|
ExcelFileTemplet |
setWide(double wide,
String... fields)
用于在模板中添加指定多个字段指向的单元格的宽度
|
addField, addFieldAttribute, addTempletAttribute, containsAttribute, containsField, getFieldAttribute, getFieldList, getTempletAttribute, getTempletAttributeList, getTempletJson, setSaveFile, toString
public static final String KEY_NAME
public static final String KEY_WIDE
public static final String KEY_HIGH
public static final String KEY_HORIZONTAL
public static final String KEY_VERTICAL
public static final String KEY_ROW_TEXT
public static final String KEY_FREEZE_TOP
public static final String KEY_FREEZE_LEFT
public static final String KEY_FILTRATE
public static final String KEY_DATA
public static final int UNORDERED_LIST_SIGN_TYPE_CODE
protected String[] fields
public ExcelFileTemplet(File saveFile)
public ExcelFileTemplet(String templetJsonText)
public ExcelFileTemplet addTitle(String field, String name)
注意:调用该方法后,若字段不存在,则向模板中添加指定的字段;若标题名称为空,则已字段名称进行命名
field
- 字段name
- 对应字段写入到模板中的名称public ExcelFileTemplet setWide(double wide, String... fields)
注意:若不传入字段组或字段组为null时,则为所有字段添加该属性
wide
- 宽度fields
- 字段组public ExcelFileTemplet setHigh(double high)
high
- 高度public ExcelFileTemplet setAlignment(WriteExcelTempletFile.AlignmentType alignmentType, String... fields)
对齐方式包括水平对齐与垂直对齐,通过WriteExcelTempletFile.AlignmentType
枚举可兼容两者的设置,但相同的对齐方式只存在一种。例如:
以上代码表示设置“title”字段的对齐方式为水平居中和垂直居中对齐;而以下代码:
test.addHorizontalAlignment("title", AlignmentType.HORIZONTAL_CENTER);
test.addHorizontalAlignment("title", AlignmentType.VERTICAL_CENTER);
表示设置“title”字段的对齐方式为水平左对齐(取最后一次设置的内容)
test.addHorizontalAlignment("title", AlignmentType.HORIZONTAL_CENTER);
test.addHorizontalAlignment("title", AlignmentType.HORIZONTAL_LEFT);
注意:若不传入字段组或字段组为null时,则为所有字段添加该属性
alignmentType
- 对齐方式枚举fields
- 字段组public ExcelFileTemplet setContentBranch(int paragraphNum, String... fields)
当添加的内容段落达到指定的段落数时,则分成多个单元格写入。
注意:若不传入字段组或字段组为null时,则为所有字段添加该属性
paragraphNum
- 分行段落数fields
- 字段组public ExcelFileTemplet setTitleBorder(org.apache.poi.ss.usermodel.BorderStyle borderStyle, String... fields)
注意:若不传入字段组或字段组为null时,则为所有字段添加该属性
borderStyle
- 边框样式枚举fields
- 字段组public ExcelFileTemplet setTitleBorder(org.apache.poi.ss.usermodel.BorderStyle borderStyle, OrientationType[] orientationTypes, String... fields)
注意:若不传入字段组或字段组为null时,则为所有字段添加该属性
borderStyle
- 边框样式枚举fields
- 字段组public ExcelFileTemplet setTitleBackground(org.apache.poi.ss.usermodel.IndexedColors indexedColors, String... fields)
注意:若不传入字段组或字段组为null时,则为所有字段添加该属性
indexedColors
- 颜色枚举fields
- 字段组public ExcelFileTemplet setFreeze(int topIndex, int leftIndex)
可设置自顶部开始以及自左边开始需要冻结的表格行(列)数,当值设置为0时,则表示不冻结。默认情况下,顶部冻结1行,左边不冻结
topIndex
- 顶部冻结行数leftIndex
- 左边冻结列数public ExcelFileTemplet setFiltrate(boolean isFiltrate)
isFiltrate
- 是否添加筛选public ExcelFileTemplet setName(String name)
name
- 模板名称public ExcelFileTemplet addDataOption(String field, List<String> optionList)
field
- 字段名称optionList
- 数据集protected String[] getFields()
public ExcelFileTemplet setOrderedListSign(OrderedListSignType orderedListSignType, String... fields)
TempletAutoAddListSign
setOrderedListSign
in interface TempletAutoAddListSign<ExcelFileTemplet>
orderedListSignType
- 有序列表标记类型fields
- 需要添加标记的字段组public ExcelFileTemplet setUnorderedList(String signText, String... fields)
TempletAutoAddListSign
setUnorderedList
in interface TempletAutoAddListSign<ExcelFileTemplet>
signText
- 自定义的无序列表标记fields
- 需要添加标记的字段组public ExcelFileTemplet clearAutoListSign(String... fields)
TempletAutoAddListSign
clearAutoListSign
in interface TempletAutoAddListSign<ExcelFileTemplet>
fields
- 需要删除自动标记的字段组Copyright © 2024. All rights reserved.