diff --git a/Doc/待处理/区/【12】新-教育资源配置发展预测/新-教育资源配置发展预测.xlsx b/Doc/待处理/区/【12】新-教育资源配置发展预测/新-教育资源配置发展预测.xlsx index c425da4f..9684e2ae 100644 Binary files a/Doc/待处理/区/【12】新-教育资源配置发展预测/新-教育资源配置发展预测.xlsx and b/Doc/待处理/区/【12】新-教育资源配置发展预测/新-教育资源配置发展预测.xlsx differ diff --git a/Doc/待处理/区/【12】新-教育资源配置发展预测/新-教育资源配置发展预测【成果】.xlsx b/Doc/待处理/区/【12】新-教育资源配置发展预测/新-教育资源配置发展预测【成果】.xlsx new file mode 100644 index 00000000..5ea41ae4 Binary files /dev/null and b/Doc/待处理/区/【12】新-教育资源配置发展预测/新-教育资源配置发展预测【成果】.xlsx differ diff --git a/src/main/java/com/dsideal/base/Tools/FillData/Area/A12.java b/src/main/java/com/dsideal/base/Tools/FillData/Area/A12.java index 8e4f7f05..f5ee770b 100644 --- a/src/main/java/com/dsideal/base/Tools/FillData/Area/A12.java +++ b/src/main/java/com/dsideal/base/Tools/FillData/Area/A12.java @@ -84,11 +84,15 @@ public class A12 { //县区名称 System.out.println("正在进行" + cityName + "-" + areaName + "的数据填充~"); int chartNumber = 36; - List> source36 = ExcelKit.getChartData(file.getAbsolutePath(), chartNumber , 6);//从2017年开始 - + List> source36 = ExcelKit.getChartData(file.getAbsolutePath(), chartNumber, 1); + if (source36 == null) { + System.out.println("skipRowCount is too big, please check your data."); + } chartNumber = 37; - List> source37 = ExcelKit.getChartData(file.getAbsolutePath(), chartNumber, 6);//从2017年开始 - + List> source37 = ExcelKit.getChartData(file.getAbsolutePath(), chartNumber, 1); + if (source37 == null) { + System.out.println("skipRowCount is too big, please check your data."); + } } } //保存文件 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 c63ab8ce..0f4e431a 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 @@ -360,8 +360,7 @@ public class ExcelKit { public static List> getChartData(String docPath, int chartNumber, int skipRowCount) throws IOException, InvalidFormatException, InterruptedException, DocumentException { List> data = readChart(docPath, chartNumber); //需要跳过前skipRowCount行,先要判断一下是不是够跳的,不够跳的直接输出错误 - if (data.size() < skipRowCount) { - System.out.println("skipRowCount is too big, please check your data."); + if (data==null ||data.size() < skipRowCount) { return null; } //截取部分数据返回 @@ -562,9 +561,15 @@ public class ExcelKit { // 处理barChart或lineChart节点 //System.out.println("找到图表类型:" + child.getName()); String type = child.getName(); - Element q = root.element("chart").element("plotArea").element(type) - .element("ser").element("cat").element("numRef"); - xList = q.element("numCache").elements("pt"); + Element q = root.element("chart"); + q = q.element("plotArea"); + q = q.element(type); + q = q.element("ser"); + q = q.element("cat"); + if (q == null) return null; + q = q.element("numRef"); + q = q.element("numCache"); + xList = q.elements("pt"); List listObject = new ArrayList<>(); ///c:chartSpace/c:chart/c:plotArea/c:lineChart/c:ser/c:val/c:numRef/c:numCache