提交 a3cae4aa authored 作者: taojinlong's avatar taojinlong

fix: 精简模式下抽取 excel(.xls) 数据集

上级 efff1e5f
......@@ -344,7 +344,9 @@ public class ExcelXlsReader implements HSSFListener {
if(obtainedNum != null && totalSheets.stream().filter(s->s.getExcelLable().equalsIgnoreCase(sheetName)).collect(Collectors.toList()).get(0).getData().size() < obtainedNum){
totalSheets.stream().filter(s->s.getExcelLable().equalsIgnoreCase(sheetName)).collect(Collectors.toList()).get(0).getData().add(tmp);
}
if(obtainedNum == null){
totalSheets.stream().filter(s->s.getExcelLable().equalsIgnoreCase(sheetName)).collect(Collectors.toList()).get(0).getData().add(tmp);
}
totalRows++;
}
}
......
......@@ -704,10 +704,21 @@ public class ExtractDataService {
List<String[]> data = new ArrayList<>();
DataTableInfoDTO dataTableInfoDTO = new Gson().fromJson(datasetTable.getInfo(), DataTableInfoDTO.class);
List<ExcelSheetData> excelSheetDataList = dataTableInfoDTO.getExcelSheetDataList();
ExcelXlsxReader excelXlsxReader = new ExcelXlsxReader();
for (ExcelSheetData excelSheetData : excelSheetDataList) {
String suffix = excelSheetData.getPath().substring(excelSheetData.getPath().lastIndexOf(".") + 1);
List<ExcelSheetData> totalSheets = new ArrayList<>();
if (StringUtils.equalsIgnoreCase(suffix, "xls")) {
ExcelXlsReader excelXlsReader = new ExcelXlsReader();
excelXlsReader.process(new FileInputStream(excelSheetData.getPath()));
totalSheets = excelXlsReader.totalSheets;
}
if (StringUtils.equalsIgnoreCase(suffix, "xlsx")) {
ExcelXlsxReader excelXlsxReader = new ExcelXlsxReader();
excelXlsxReader.process(new FileInputStream(excelSheetData.getPath()));
for (ExcelSheetData sheet : excelXlsxReader.totalSheets) {
totalSheets = excelXlsxReader.totalSheets;
}
for (ExcelSheetData sheet : totalSheets) {
if (sheet.getExcelLable().equalsIgnoreCase(excelSheetData.getExcelLable())) {
for (List<String> dataItem : sheet.getData()) {
if (dataItem.size() > 0) {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论