public class SheetWriterImpl extends SheetRowWriterImpl implements SheetWriter
| 限定符和类型 | 字段和说明 |
|---|---|
protected int |
currentRowNum
当前操作行号, 0表示未开始操作
|
repairDEFAULT_WINDOW_SIZE, rowAccessWindowSize, supportValiddataFormat, formulaEvaluator, sheet, supportTrimData| 构造器和说明 |
|---|
SheetWriterImpl(org.apache.poi.ss.usermodel.Sheet sheet) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected void |
doValidData(java.util.List<IDataHeader> headers,
int startRowNum,
int endRowNum)
校验数据有效性;
数据有效性不应该设置过多。
|
protected RowContext |
doWriteMapRow(int startRowNum,
java.util.Map<java.lang.String,java.lang.Object> rowData,
Headers headers,
CellStyleMapper cellStyleMapper,
int itemIndex)
指定行指定header写入map数据
|
protected int |
doWriteRow(int rowNum,
Headers headers,
CellStyleMapper cellStyleMapper)
指定行开始写 header
|
protected RowContext |
doWriteRow(int rowNum,
int columnNum,
java.util.List<?> rowData,
CellStyleMapper cellStyleMapper)
指定行指定列开始写一行数据
|
protected RowContext |
doWriteRow(int startRowNum,
java.lang.Object rowData,
Headers headers,
CellStyleMapper cellStyleMapper,
int itemIndex)
指定行指定header写入bean或者map
|
protected <T> RowContext |
doWriteRow(int startRowNum,
T rowData,
Headers headers,
java.util.function.BiConsumer<IMergedCell,T> consumer,
int itemIndex)
指定行指定header写入bean或者map
|
void |
fill(int fillStartRowNum,
int fillEndRowNum,
java.util.List<?> rows,
Headers headers)
从开始行到指定行填充数据; 如果数据量大于可填充行数,则会新增新的row;
注意只对非索引列支持
|
int |
getCurrentRowNum()
获取当前行号,从1开始
|
void |
jumpToRowNum(int rowNum)
直接跳至某一行
|
void |
passCurrentRow()
跳过当前行
|
void |
skipRows(int skipRowNum)
跳过指定几行
|
void |
validData(int rowCount,
Headers headers)
下一行开始构建指定行数的单元格约束
|
void |
validData(int startRowNum,
int rowCount,
Headers headers)
指定行开始构建指定行数的单元格约束
|
void |
writeHeader(Headers headers)
下一行写入header
|
void |
writeHeader(Headers headers,
CellStyleMapper cellStyleMapper)
下一行写入header
|
void |
writeHeader(int rowNum,
Headers headers)
指定行写入headers
|
void |
writeHeader(int rowNum,
Headers headers,
CellStyleMapper cellStyleMapper)
指定行写入headers
|
RowContext |
writeListRow(int startRowNum,
int columnNum,
java.util.List<?> rowData,
CellStyleMapper cellStyleMapper)
指定行指定列 开始写入一行数据
|
RowContext |
writeListRow(int columnNum,
java.util.List<?> rowData,
CellStyleMapper cellStyleMapper)
下一行 指定列 开始写入一行数据
|
RowContext |
writeListRow(java.util.List<?> rowData)
下一行 第一列 开始写入一行数据
|
RowContext |
writeListRow(java.util.List<?> rowData,
CellStyleMapper cellStyleMapper)
下一行 第一列 开始写入一行数据
|
RowContext |
writeMapRow(int rowNum,
java.util.Map<java.lang.String,java.lang.Object> map,
Headers headers)
指定行写入map
|
RowContext |
writeMapRow(int rowNum,
java.util.Map<java.lang.String,java.lang.Object> map,
Headers headers,
CellStyleMapper cellStyleMapper)
指定行写入map
|
RowContext |
writeMapRow(java.util.Map<java.lang.String,java.lang.Object> rowData,
Headers headers)
下一行写入map
|
RowContext |
writeMapRow(java.util.Map<java.lang.String,java.lang.Object> rowData,
Headers headers,
CellStyleMapper cellStyleMapper)
下一行写入map
|
int |
writeMapRows(int startRowNum,
java.util.List<java.util.Map<java.lang.String,java.lang.Object>> rows,
Headers headers)
指定行指定header写入多行数据
|
int |
writeMapRows(int startRowNum,
java.util.List<java.util.Map<java.lang.String,java.lang.Object>> rows,
Headers headers,
CellStyleMapper cellStyleMapper)
指定行指定header写入多行数据
|
int |
writeMapRows(java.util.List<java.util.Map<java.lang.String,java.lang.Object>> rows,
Headers headers)
下一行行指定header写入多行数据
|
int |
writeMapRows(java.util.List<java.util.Map<java.lang.String,java.lang.Object>> rows,
Headers headers,
CellStyleMapper cellStyleMapper)
下一行行指定header写入多行数据
|
RowContext |
writeRow(int startRowNum,
java.lang.Object rowData,
Headers headers)
指定行指定header写入一个对象
|
RowContext |
writeRow(int startRowNum,
java.lang.Object rowData,
Headers headers,
CellStyleMapper cellStyleMapper)
指定行指定header写入一个对象
|
RowContext |
writeRow(java.lang.Object rowData,
Headers headers)
下一行指定header写入一个对象
|
RowContext |
writeRow(java.lang.Object rowData,
Headers headers,
CellStyleMapper cellStyleMapper)
下一行指定header写入一个对象
|
int |
writeRows(int startRowNum,
int columnNum,
java.util.List<?> rows)
指定行指定列开始写入多行数据
|
int |
writeRows(int startRowNum,
int columnNum,
java.util.List<?> rows,
CellStyleMapper cellStyleMapper)
指定行指定列开始写入多行数据
|
int |
writeRows(int columnNum,
java.util.List<?> rows)
下一行指定列开始写入多行数据
|
int |
writeRows(int columnNum,
java.util.List<?> rows,
CellStyleMapper cellStyleMapper)
下一行指定列开始写入多行数据
|
<T> int |
writeRows(int startRowNum,
java.util.List<T> rows,
Headers headers,
java.util.function.BiConsumer<IMergedCell,T> consumer)
指定行指定header写入多行数据
|
int |
writeRows(java.util.List<?> rows)
下一行第一列开始写入多行数据
|
int |
writeRows(java.util.List<?> rows,
CellStyleMapper cellStyleMapper)
下一行第一列开始写入多行数据
|
<T> int |
writeRows(java.util.List<T> rows,
Headers headers,
java.util.function.BiConsumer<IMergedCell,T> consumer)
下一行指定header写入多行数据
|
setRepair, writeRow, writeRow, writeRowaddValidationData, autoSizeColumn, flush, handleCell, handleCell, handleCell, setSupportValid, writeCell, writeCell, writeCell, writeCelladdPicture, addPicture, addPicture, addPicture, addPicture, addPicture, addPicture, addPicture, addPicture, addPicture, autoSizeColumn, autoSizeColumnWithMaxColumnNum, createCellStyle, evaluate, evaluateFormulaCell, getCellStyle, getCellStyle, getDataFormat, getFormatProperties, getName, getOrCreateCell, getOrCreateRow, insertRows, setCellStyle, setCellStyle, setCellStyle, setCellValue, setColumnWidth, setSupportTrimDataclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitautoSizeColumn, autoSizeColumn, autoSizeColumnWithMaxColumnNum, setColumnWidth, writeRows, writeRows, writeRows, writeRowswriteRow, writeRow, writeRowflush, setSupportValid, writeCell, writeCell, writeCell, writeCellpublic int getCurrentRowNum()
SheetWritergetCurrentRowNum 在接口中 SheetWriterpublic void passCurrentRow()
SheetWriterpassCurrentRow 在接口中 SheetWriterpublic void skipRows(int skipRowNum)
SheetWriterskipRows 在接口中 SheetWriterskipRowNum - 指定几行public void jumpToRowNum(int rowNum)
SheetWriterjumpToRowNum 在接口中 SheetWriterrowNum - 指定行号public void writeHeader(int rowNum,
Headers headers,
CellStyleMapper cellStyleMapper)
SheetWriterwriteHeader 在接口中 SheetWriterrowNum - 指定行headers - HeaderscellStyleMapper - CellStyleMapperpublic void writeHeader(int rowNum,
Headers headers)
SheetWriterwriteHeader 在接口中 SheetWriterrowNum - 指定行headers - Headerspublic void writeHeader(Headers headers, CellStyleMapper cellStyleMapper)
SheetWriterwriteHeader 在接口中 SheetWriterheaders - HeaderscellStyleMapper - CellStyleMapperpublic void writeHeader(Headers headers)
SheetWriterwriteHeader 在接口中 SheetWriterheaders - Headerspublic int writeRows(int startRowNum,
int columnNum,
java.util.List<?> rows,
CellStyleMapper cellStyleMapper)
SheetWriterwriteRows 在接口中 SheetWriterstartRowNum - 开始行columnNum - 指定列rows - 多行数据cellStyleMapper - CellStyleMapperpublic int writeRows(int startRowNum,
int columnNum,
java.util.List<?> rows)
SheetWriterwriteRows 在接口中 SheetWriterstartRowNum - 开始行columnNum - 指定列rows - 多行数据public int writeRows(int columnNum,
java.util.List<?> rows,
CellStyleMapper cellStyleMapper)
SheetWriterwriteRows 在接口中 SheetWritercolumnNum - 指定列rows - 多行数据cellStyleMapper - CellStyleMapperpublic int writeRows(int columnNum,
java.util.List<?> rows)
SheetWriterwriteRows 在接口中 SheetWritercolumnNum - 指定列rows - 多行数据public int writeRows(java.util.List<?> rows,
CellStyleMapper cellStyleMapper)
SheetWriterwriteRows 在接口中 SheetWriterrows - 多行数据cellStyleMapper - CellStyleMapperpublic int writeRows(java.util.List<?> rows)
SheetWriterwriteRows 在接口中 SheetWriterrows - 多行数据public <T> int writeRows(int startRowNum,
java.util.List<T> rows,
Headers headers,
java.util.function.BiConsumer<IMergedCell,T> consumer)
SheetWriterwriteRows 在接口中 SheetWriterstartRowNum - 开始行rows - 多行数据headers - Headersconsumer - 加工cellpublic <T> int writeRows(java.util.List<T> rows,
Headers headers,
java.util.function.BiConsumer<IMergedCell,T> consumer)
SheetWriterwriteRows 在接口中 SheetWriterrows - 多行数据headers - Headersconsumer - 加工cellpublic int writeMapRows(int startRowNum,
java.util.List<java.util.Map<java.lang.String,java.lang.Object>> rows,
Headers headers,
CellStyleMapper cellStyleMapper)
SheetWriterwriteMapRows 在接口中 SheetWriterstartRowNum - 开始行rows - 多行数据headers - HeaderscellStyleMapper - CellStyleMapperpublic int writeMapRows(int startRowNum,
java.util.List<java.util.Map<java.lang.String,java.lang.Object>> rows,
Headers headers)
SheetWriterwriteMapRows 在接口中 SheetWriterstartRowNum - 开始行rows - 多行数据headers - Headerspublic int writeMapRows(java.util.List<java.util.Map<java.lang.String,java.lang.Object>> rows,
Headers headers,
CellStyleMapper cellStyleMapper)
SheetWriterwriteMapRows 在接口中 SheetWriterrows - 多行数据headers - HeaderscellStyleMapper - CellStyleMapperpublic int writeMapRows(java.util.List<java.util.Map<java.lang.String,java.lang.Object>> rows,
Headers headers)
SheetWriterwriteMapRows 在接口中 SheetWriterrows - 多行数据headers - Headerspublic void fill(int fillStartRowNum,
int fillEndRowNum,
java.util.List<?> rows,
Headers headers)
注意只对非索引列支持
fill 在接口中 SheetWriterfillStartRowNum - 开始行, 从1开始fillEndRowNum - 结束行, 从1开始rows - 数据headers - Headerspublic RowContext writeRow(int startRowNum, java.lang.Object rowData, Headers headers, CellStyleMapper cellStyleMapper)
SheetWriterwriteRow 在接口中 SheetWriterstartRowNum - 开始行rowData - 对象headers - HeaderscellStyleMapper - CellStyleMapperRowContextpublic RowContext writeRow(int startRowNum, java.lang.Object rowData, Headers headers)
SheetWriterwriteRow 在接口中 SheetWriterstartRowNum - 开始行rowData - 对象headers - HeadersRowContextpublic RowContext writeRow(java.lang.Object rowData, Headers headers, CellStyleMapper cellStyleMapper)
SheetWriterwriteRow 在接口中 SheetWriterrowData - 对象headers - HeaderscellStyleMapper - CellStyleMapperRowContextpublic RowContext writeRow(java.lang.Object rowData, Headers headers)
SheetWriterwriteRow 在接口中 SheetWriterrowData - 对象headers - HeadersRowContextpublic RowContext writeListRow(int startRowNum, int columnNum, java.util.List<?> rowData, CellStyleMapper cellStyleMapper)
SheetWriterwriteListRow 在接口中 SheetWriterstartRowNum - 开始写入行columnNum - 列号rowData - 一行数据cellStyleMapper - CellStyleMapperRowContextpublic RowContext writeListRow(int columnNum, java.util.List<?> rowData, CellStyleMapper cellStyleMapper)
SheetWriterwriteListRow 在接口中 SheetWritercolumnNum - 列号rowData - 一行数据cellStyleMapper - CellStyleMapperRowContextpublic RowContext writeListRow(java.util.List<?> rowData, CellStyleMapper cellStyleMapper)
SheetWriterwriteListRow 在接口中 SheetWriterrowData - 一行数据cellStyleMapper - CellStyleMapperRowContextpublic RowContext writeListRow(java.util.List<?> rowData)
SheetWriterwriteListRow 在接口中 SheetWriterrowData - 一行数据RowContextpublic RowContext writeMapRow(int rowNum, java.util.Map<java.lang.String,java.lang.Object> map, Headers headers, CellStyleMapper cellStyleMapper)
SheetWriterwriteMapRow 在接口中 SheetWriterrowNum - 指定行map - mapheaders - HeaderscellStyleMapper - CellStyleMapperRowContextpublic RowContext writeMapRow(int rowNum, java.util.Map<java.lang.String,java.lang.Object> map, Headers headers)
SheetWriterwriteMapRow 在接口中 SheetWriterrowNum - 指定行map - map数据headers - HeadersRowContextpublic RowContext writeMapRow(java.util.Map<java.lang.String,java.lang.Object> rowData, Headers headers, CellStyleMapper cellStyleMapper)
SheetWriterwriteMapRow 在接口中 SheetWriterrowData - map数据headers - HeaderscellStyleMapper - CellStyleMapperRowContextpublic RowContext writeMapRow(java.util.Map<java.lang.String,java.lang.Object> rowData, Headers headers)
SheetWriterwriteMapRow 在接口中 SheetWriterrowData - map数据headers - HeadersRowContextprotected RowContext doWriteRow(int rowNum, int columnNum, java.util.List<?> rowData, CellStyleMapper cellStyleMapper)
rowNum - 指定行columnNum - 指定列rowData - 一行数据cellStyleMapper - CellStyleMapperRowContextprotected int doWriteRow(int rowNum,
Headers headers,
CellStyleMapper cellStyleMapper)
rowNum - 指定行headers - HeaderscellStyleMapper - CellStyleMapperprotected RowContext doWriteMapRow(int startRowNum, java.util.Map<java.lang.String,java.lang.Object> rowData, Headers headers, CellStyleMapper cellStyleMapper, int itemIndex)
startRowNum - 指定行rowData - 一行map类型数据headers - HeaderscellStyleMapper - CellStyleMapperitemIndex - 该行数据在整个集合数据中的索引RowContextprotected RowContext doWriteRow(int startRowNum, java.lang.Object rowData, Headers headers, CellStyleMapper cellStyleMapper, int itemIndex)
startRowNum - 指定开始行rowData - 一行map类型数据headers - HeaderscellStyleMapper - CellStyleMapperitemIndex - 该行数据在整个集合数据中的索引RowContextprotected <T> RowContext doWriteRow(int startRowNum, T rowData, Headers headers, java.util.function.BiConsumer<IMergedCell,T> consumer, int itemIndex)
startRowNum - 指定开始行rowData - 一行map类型数据headers - Headersconsumer - 加工cellitemIndex - 该行数据在整个集合数据中的索引RowContextpublic void validData(int startRowNum,
int rowCount,
Headers headers)
SheetWritervalidData 在接口中 SheetWriterstartRowNum - 指定开始行rowCount - 约束行数headers - Headerspublic void validData(int rowCount,
Headers headers)
SheetWritervalidData 在接口中 SheetWriterrowCount - 约束行数headers - Headersprotected void doValidData(java.util.List<IDataHeader> headers, int startRowNum, int endRowNum)
数据有效性不应该设置过多。设置过多, 生成速度变慢, excel文件打开异常, 会失去有效性校验
headers - headersstartRowNum - 开始行,从1开始endRowNum - 结束行,从1开始, 结束行不能小于开始行