easyexcel
easyexcel copied to clipboard
Convert中怎么获取行数据
建议先去看文档
异常代码
private String test1;
private String test2;
例如现在有两个字段,test2是根据test1的内容导出或导入的,需要怎么处理,我看 https://github.com/alibaba/easyexcel/issues/1700 这里说可以,但是没找到方法。希望有一个类似jackson序列化和反序列化中的JsonGenerator gen,可以使用gen.getCurrentValue()获取到当前行数据
异常提示
大家尽量把问题一次性描述清楚,然后贴上全部异常,这样方便把问题一次性解决掉。 至少大家要符合一个原则就是,能让其他人复现出这个问题,如果无法复现,肯定无法解决。
问题描述
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.metadata.holder.ReadRowHolder;
public class MyDataListener extends AnalysisEventListener<MyData> {
private MyData currentData;
@Override
public void invoke(MyData data, AnalysisContext context) {
this.currentData = data;
// 在这里可以处理当前行数据
processData();
}
private void processData() {
if (currentData != null) {
// 根据当前行数据进行处理
String test1 = currentData.getTest1();
String test2 = currentData.getTest2();
// 在这里处理 test2 是根据 test1 的内容导出或导入的逻辑
System.out.println("Processing data: test1=" + test1 + ", test2=" + test2);
}
}
@Override
public void invokeHead(Map<Integer, CellData> headMap, AnalysisContext context) {
// do nothing
}
@Override
public void doAfterAllAnalysed(AnalysisContext context) {
// do nothing
}
}