触发场景描述 比如一个excel有5个sheet,我想直接读取第二个,这时候会报空指针 触发Bug的代码
TestListener listener = new TestListener();
//EasyExcel.read(fileName, listener).sheet(1).headRowNumber(0).doRead();
ExcelReader excelReader = EasyExcel.read(fileName).build();
ReadSheet readSheet =
EasyExcel.readSheet(1, "Sheet1").registerReadListener(listener).build();
//List<ReadSheet> readSheets = excelReader.excelExecutor().sheetList();
//excelReader.read(readSheets);
excelReader.read(readSheet);
excelReader.finish();
提示的异常或者没有达到的效果 Exception in thread "main" java.lang.NullPointerException at com.alibaba.excel.analysis.v03.handlers.BofRecordHandler.processRecord(BofRecordHandler.java:78) at com.alibaba.excel.analysis.v03.XlsSaxAnalyser.processRecord(XlsSaxAnalyser.java:138) at org.apache.poi.hssf.eventusermodel.MissingRecordAwareHSSFListener.processRecord(MissingRecordAwareHSSFListener.java:203) at org.apache.poi.hssf.eventusermodel.FormatTrackingHSSFListener.processRecord(FormatTrackingHSSFListener.java:92) at org.apache.poi.hssf.eventusermodel.HSSFRequest.processRecord(HSSFRequest.java:109) at org.apache.poi.hssf.eventusermodel.HSSFEventFactory.genericProcessEvents(HSSFEventFactory.java:179) at org.apache.poi.hssf.eventusermodel.HSSFEventFactory.processEvents(HSSFEventFactory.java:136) at org.apache.poi.hssf.eventusermodel.HSSFEventFactory.processWorkbookEvents(HSSFEventFactory.java:82) at org.apache.poi.hssf.eventusermodel.HSSFEventFactory.processWorkbookEvents(HSSFEventFactory.java:54) at com.alibaba.excel.analysis.v03.XlsSaxAnalyser.execute(XlsSaxAnalyser.java:110) at com.alibaba.excel.analysis.ExcelAnalyserImpl.analysis(ExcelAnalyserImpl.java:104) at com.alibaba.excel.ExcelReader.read(ExcelReader.java:185) at com.alibaba.excel.ExcelReader.read(ExcelReader.java:174) at cn.pelerin.bfanalyze.common.EasyExcelTest.easyExcel(EasyExcelTest.java:28) at cn.pelerin.bfanalyze.common.EasyExcelTest.main(EasyExcelTest.java:16)