2024年2月8日发(作者:)

public AnalysisContextImpl(ReadWorkbook readWorkbook) { if (readWorkbook == null) { throw new IllegalArgumentException("Workbook argument cannot be null"); } readWorkbookHolder = new ReadWorkbookHolder(readWorkbook); currentReadHolder = readWorkbookHolder; if (gEnabled()) { ("Initialization 'AnalysisContextImpl' complete"); } }ReadWorkbookHolder开始读取readWorkbook中传进来的属性。
两个excelReadExecutor @Override public void execute(List readSheetList, Boolean readAll) { for (ReadSheet readSheet : sheetList) { readSheet = (readSheet, readSheetList, readAll, rkbookHolder().getGlobalConfiguration()); if (readSheet != null) { tSheet(readSheet); parseXmlSource((etNo()), new XlsxRowHandler(analysisContext, stylesTable)); // The last sheet is read eetHolder().notifyAfterAllAnalysed(analysisContext); } } }
public void notifyEndOneRow(AnalysisFinishEvent event, AnalysisContext analysisContext) { Map cellDataMap = lysisResult(); if (y(cellDataMap)) { if (gEnabled()) { ("Empty row!"); } if (rkbookHolder().getIgnoreEmptyRow()) { return; } } ReadRowHolder readRowHolder = wHolder(); rentRowAnalysisResult(cellDataMap); int rowIndex = Index(); int currentheadRowNumber = eetHolder().getHeadRowNumber(); if (rowIndex >= currentheadRowNumber) { // Now is data for (ReadListener readListener : tReadHolder().readListenerList()) { try { **(rentRowAnalysisResult(), analysisContext);** } catch (Exception e) { for (ReadListener readListenerException : tReadHolder().readListenerList()) { try { ption(e, analysisContext); } catch (Exception exception) { throw new ExcelAnalysisException(sage(), exception); } } break; } if (!t(analysisContext)) { throw new ExcelAnalysisStopException(); } } } else { // Last head column if (currentheadRowNumber == rowIndex + 1) { buildHead(analysisContext, cellDataMap); } // Now is header for (ReadListener readListener : tReadHolder().readListenerList()) { try { Head(cellDataMap, analysisContext); } catch (Exception e) { for (ReadListener readListenerException : tReadHolder().readListenerList()) { try { ption(e, analysisContext); } catch (Exception exception) { throw new ExcelAnalysisException(sage(), exception); } } break; } if (!t(analysisContext)) { throw new ExcelAnalysisStopException(); } } } }