public abstract class SimpleSheetListener<T> extends Object implements ExcelReader.Listener
| 限定符和类型 | 字段和说明 |
|---|---|
protected TreeMap<Integer,Converter> |
cMapper |
protected TreeMap<Integer,Field> |
fMapper |
| 构造器和说明 |
|---|
SimpleSheetListener(ExcelSheet sheet)
创建一个sheet监听器,指定默认100的列表缓存大小
|
SimpleSheetListener(ExcelSheet sheet,
int cache)
创建一个sheet监听器,指定列表缓存大小
|
| 限定符和类型 | 方法和说明 |
|---|---|
protected Class<T> |
entityClass()
获取实体类的class对象
|
Converter.MismatchPolicy |
mismatchPolicy()
转换异常的处理方法
|
protected abstract void |
onList(int rowStart,
int rowEnd,
List<T> list)
解析到部分数据,进行一个批次的处理,会调用多次
|
void |
onRow(ExcelSheet sheet,
ExcelRow row,
List<ExcelCell> cells)
处理行
保证按顺序处理行,行号小的先处理,列号小的先处理
不保证连续,遇到空行会跳过,遇到空单元格(BlankRecord)会跳过
行内保证至少有一个单元格
保证读取单元格的值不为null
|
void |
onSheetEnd(ExcelSheet sheet)
处理sheet结尾
|
void |
onSheetStart(ExcelSheet sheet)
处理sheet开头
|
protected T |
rowEntity(int rowIndex,
ExcelRow row,
List<ExcelCell> cells)
获取某行对应的实体信息
|
protected boolean |
rowSkip(int rowIndex,
ExcelRow row,
List<ExcelCell> cells)
是否跳过某行
|
protected void |
titleRow(int rowIndex,
ExcelRow row,
List<ExcelCell> cells)
标题行解析
|
protected int |
titleRowCount()
标题行数量
|
public SimpleSheetListener(ExcelSheet sheet)
sheet - 当前sheet信息public SimpleSheetListener(ExcelSheet sheet, int cache)
sheet - 当前sheet信息cache - 缓存大小public final void onSheetStart(@Nonnull ExcelSheet sheet)
ExcelReader.ListeneronSheetStart 在接口中 ExcelReader.Listenersheet - sheet信息public final void onRow(@Nonnull ExcelSheet sheet, @Nonnull ExcelRow row, @Nonnull List<ExcelCell> cells)
ExcelReader.ListeneronRow 在接口中 ExcelReader.Listenersheet - sheet信息row - row信息cells - cells信息public final void onSheetEnd(@Nonnull ExcelSheet sheet)
ExcelReader.ListeneronSheetEnd 在接口中 ExcelReader.Listenersheet - sheet信息@Nonnull public Converter.MismatchPolicy mismatchPolicy()
protected int titleRowCount()
protected void titleRow(int rowIndex,
@Nullable
ExcelRow row,
@Nullable
List<ExcelCell> cells)
rowIndex - 行号row - 标题行信息cells - 标题行单元格信息protected boolean rowSkip(int rowIndex,
@Nullable
ExcelRow row,
@Nullable
List<ExcelCell> cells)
throws Exception
rowIndex - 行号row - 行信息cells - 行内所有单元格Exception - 判断过程中出现的异常@Nullable protected T rowEntity(int rowIndex, @Nullable ExcelRow row, @Nullable List<ExcelCell> cells) throws Exception
rowIndex - 行号row - 行信息cells - 行内所有单元格Exception - 解析过程中出现的异常Copyright © 2019. All rights reserved.