diff --git a/Doc/全省及州市县区人口与教育报告集20241023/16个州市报告2022/分析报告20240510/昭通市人口变化及其对教育的影响20240416.docx b/Doc/全省及州市县区人口与教育报告集20241023/16个州市报告2022/分析报告20240510/昭通市人口变化及其对教育的影响20240416.docx index a0daac78..c4b17ef9 100644 Binary files a/Doc/全省及州市县区人口与教育报告集20241023/16个州市报告2022/分析报告20240510/昭通市人口变化及其对教育的影响20240416.docx and b/Doc/全省及州市县区人口与教育报告集20241023/16个州市报告2022/分析报告20240510/昭通市人口变化及其对教育的影响20240416.docx differ diff --git a/Doc/待处理/市/【11】教育资源配置发展预测/教育资源配置发展预测(人).xlsx b/Doc/待处理/市/【11】教育资源配置发展预测/教育资源配置发展预测(人).xlsx index 870ca469..a20a389a 100644 Binary files a/Doc/待处理/市/【11】教育资源配置发展预测/教育资源配置发展预测(人).xlsx and b/Doc/待处理/市/【11】教育资源配置发展预测/教育资源配置发展预测(人).xlsx differ diff --git a/Doc/待处理/市/【11】教育资源配置发展预测/教育资源配置发展预测(人)【成果】.xlsx b/Doc/待处理/市/【11】教育资源配置发展预测/教育资源配置发展预测(人)【成果】.xlsx index 9af21d25..5fabedbc 100644 Binary files a/Doc/待处理/市/【11】教育资源配置发展预测/教育资源配置发展预测(人)【成果】.xlsx and b/Doc/待处理/市/【11】教育资源配置发展预测/教育资源配置发展预测(人)【成果】.xlsx differ diff --git a/src/main/java/com/dsideal/base/Tools/FillData/ExcelKit/ExcelKit.java b/src/main/java/com/dsideal/base/Tools/FillData/ExcelKit/ExcelKit.java index 9945c72b..96e2b68f 100644 --- a/src/main/java/com/dsideal/base/Tools/FillData/ExcelKit/ExcelKit.java +++ b/src/main/java/com/dsideal/base/Tools/FillData/ExcelKit/ExcelKit.java @@ -478,33 +478,8 @@ public class ExcelKit { //如果达到目标预期的数量,就直接返回poi获取的数据列表 int totalRow = data.size() + skipRowCount; if (totalRow < expectLimit) { - System.out.println("期望数量>=" + expectLimit + ",现在只有" + totalRow + "条,理解为POI读取WORD图表存在问题,使用Python进行二次获取数据..."); - // 留出足够的com关闭word的时间长度,否则会有异常 - Thread.sleep(3000); - //否则调用python+com进行再次获取数据列表,这次获取的可能才是对的 - //写入交互文本文件 - ExcelKit.callPythonPrepare(docPath, chartNumber); - //对图表进行读取 - ExcelKit.callPythonRead(); - //读取生成的EXCEL,使用POI就可以了 - //使用POI - int skipRows = 1; // 假设我们要跳过第一行 - data = ExcelKit.readExcelToList(ExcelKit.excelPath, skipRows); - System.out.println("二次获取数据条目数量:" + data.size() + ",期望数量=" + expectLimit); - - //处理数据data - //第一行认为是标准长度,从后往前找,发现长度小于第一行长度的就remove掉 - if(data.isEmpty()) return data; - int firstRowLength = data.getFirst().size(); - System.out.println("第一行长度:" + firstRowLength); - for (int i = data.size() - 1; i >= 0; i--) { - List rowData = data.get(i); - if (rowData.size() < firstRowLength) { - data.remove(i); - } - } - } else { - System.out.println("期望数量>=" + expectLimit + ",现在有" + totalRow + "条,理解为数据读取正确,直接返回POI获取的数据列表..."); + System.out.println("怎么能小于预期目标:" + expectLimit + "呢,请人为检查!"); + System.exit(0); } return data; } @@ -543,7 +518,7 @@ public class ExcelKit { List> dataList = new ArrayList<>(); FileInputStream fis = new FileInputStream(filePath); Workbook workbook = new XSSFWorkbook(fis); - if(sheetIndex >= workbook.getNumberOfSheets()){ + if (sheetIndex >= workbook.getNumberOfSheets()) { return dataList; } Sheet sheet = workbook.getSheetAt(sheetIndex); @@ -594,7 +569,7 @@ public class ExcelKit { List rowData = dataList.get(i); if (rowData.isEmpty()) { dataList.remove(i); - }else if(rowData.getFirst()==null || !rowData.getFirst().matches("[0-9]+")){ + } else if (rowData.getFirst() == null || !rowData.getFirst().matches("[0-9]+")) { dataList.remove(i); } } diff --git a/src/main/java/com/dsideal/base/Tools/FillData/Test/C11.java b/src/main/java/com/dsideal/base/Tools/FillData/Test/C11.java new file mode 100644 index 00000000..2adc120f --- /dev/null +++ b/src/main/java/com/dsideal/base/Tools/FillData/Test/C11.java @@ -0,0 +1,35 @@ +package com.dsideal.base.Tools.FillData.Test; + +import cn.hutool.core.io.FileUtil; +import com.dsideal.base.Tools.FillData.ExcelKit.ExcelKit; +import com.dsideal.base.Tools.Util.LocalMysqlConnectUtil; +import com.dsideal.base.Tools.Util.ReadDocxUtil; +import org.apache.poi.openxml4j.exceptions.InvalidFormatException; +import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.xssf.usermodel.XSSFCellStyle; +import org.apache.poi.xssf.usermodel.XSSFSheet; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +public class C11 { + + + public static void main(String[] args) throws IOException, InvalidFormatException, InterruptedException { + //初始化数据库连接 + LocalMysqlConnectUtil.Init(); + + + File file=new File("D:\\dsWork\\YunNanDsBase\\Doc\\全省及州市县区人口与教育报告集20241023\\16个州市报告2022\\分析报告20240510\\昭通市人口变化及其对教育的影响20240416.docx"); + //数据在图表36,教职工总量 + int firstChartNumber = 36, secondChartNumber = 37; + + //占地面积37 + List> source1 = ExcelKit.getChartData(file.getAbsolutePath(), firstChartNumber - 1, 1, 10); + ExcelKit.printTable(source1); + } +}