|
|
|
@ -19,7 +19,7 @@ import java.util.List;
|
|
|
|
|
public class A1 {
|
|
|
|
|
|
|
|
|
|
//示例Excel
|
|
|
|
|
static String sampleExcelPath = "D:\\dsWork\\YunNanDsBase\\Doc\\待处理\\市\\【8】人口总体情况\\人口总体情况.xlsx";
|
|
|
|
|
static String sampleExcelPath = "D:\\dsWork\\YunNanDsBase\\Doc\\待处理\\区\\【1】学前幼儿入园总量预测\\学前幼儿入园总量预测.xlsx";
|
|
|
|
|
|
|
|
|
|
//源文件
|
|
|
|
|
static String parentPath = "D:\\dsWork\\YunNanDsBase\\Doc\\全省及州市县区人口与教育报告集20241023\\133个县区报告2022\\县区研究报告";
|
|
|
|
@ -57,20 +57,88 @@ public class A1 {
|
|
|
|
|
if (file.isDirectory()) continue;
|
|
|
|
|
if (!file.getName().endsWith(".xlsx") && !file.getName().endsWith(".xls"))
|
|
|
|
|
continue;
|
|
|
|
|
//城市名称
|
|
|
|
|
String cityName = ru.getCityOrAreaName(file.getName());
|
|
|
|
|
|
|
|
|
|
//县区名称
|
|
|
|
|
String areaName = ru.getCityOrAreaName(file.getName());
|
|
|
|
|
if (StrKit.isBlank(areaName)) {
|
|
|
|
|
System.out.println("发现异常数据,请人工处理:" + file.getName());
|
|
|
|
|
System.exit(0);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//市州名称
|
|
|
|
|
//此文件的路径中最后一层的目录名称,应该是带着市州名称 ,把最后一层子目录的名称提出
|
|
|
|
|
String parentPathName = file.getParentFile().getName();
|
|
|
|
|
String cityName = ru.getCityOrAreaName(parentPathName);
|
|
|
|
|
if (StrKit.isBlank(cityName) || cityName.equals(areaName)) {
|
|
|
|
|
parentPathName = file.getParentFile().getParentFile().getName();
|
|
|
|
|
cityName = ru.getCityOrAreaName(parentPathName);
|
|
|
|
|
}
|
|
|
|
|
if (StrKit.isBlank(cityName)) {
|
|
|
|
|
System.out.println("发现异常数据,请人工处理:" + file.getName());
|
|
|
|
|
System.exit(0);
|
|
|
|
|
}
|
|
|
|
|
System.out.println("正在进行" + cityName + "的数据填充~");
|
|
|
|
|
//县区名称
|
|
|
|
|
System.out.println("正在进行" + cityName + "-" + areaName + "的数据填充~");
|
|
|
|
|
String sourceExcel = file.getAbsolutePath();
|
|
|
|
|
//System.out.println(file.getName());
|
|
|
|
|
List<List<String>> dataList = ExcelKit.readSecondTable(sourceExcel, 0, "自动计算招生数、在校生数",
|
|
|
|
|
2, "K");
|
|
|
|
|
|
|
|
|
|
ExcelKit.printTable(dataList);
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
//入园总数
|
|
|
|
|
for (List<String> stringList : dataList) {
|
|
|
|
|
//年份
|
|
|
|
|
int year = Integer.parseInt(stringList.get(0));
|
|
|
|
|
//3预测总招生数
|
|
|
|
|
int zss = Integer.parseInt(stringList.get(3).split("\\.")[0]);
|
|
|
|
|
Row outRow = outSheet.createRow(++rowIndex);
|
|
|
|
|
ExcelKit.putData(outRow, Arrays.asList(String.valueOf(year),
|
|
|
|
|
"总入园数", "", String.valueOf(zss), "", areaName, cityName), dataStyle);
|
|
|
|
|
}
|
|
|
|
|
//2022入园基数
|
|
|
|
|
for (List<String> ignored : dataList) {
|
|
|
|
|
//年份
|
|
|
|
|
int year = 2022;
|
|
|
|
|
//3预测总招生数
|
|
|
|
|
int zss = Integer.parseInt(dataList.getFirst().get(3).split("\\.")[0]);
|
|
|
|
|
Row outRow = outSheet.createRow(++rowIndex);
|
|
|
|
|
ExcelKit.putData(outRow, Arrays.asList(String.valueOf(year),
|
|
|
|
|
"2022年基数", "", String.valueOf(zss), "", areaName, cityName), dataStyle);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//城区
|
|
|
|
|
for (List<String> stringList : dataList) {
|
|
|
|
|
//年份
|
|
|
|
|
int year = Integer.parseInt(stringList.get(0));
|
|
|
|
|
//4修正城区招生A
|
|
|
|
|
int v = Integer.parseInt(stringList.get(4).split("\\.")[0]);
|
|
|
|
|
Row outRow = outSheet.createRow(++rowIndex);
|
|
|
|
|
ExcelKit.putData(outRow, Arrays.asList(String.valueOf(year),
|
|
|
|
|
"", "城区", "", String.valueOf(v), areaName, cityName), dataStyle);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//镇区
|
|
|
|
|
for (List<String> stringList : dataList) {
|
|
|
|
|
//年份
|
|
|
|
|
int year = Integer.parseInt(stringList.get(0));
|
|
|
|
|
|
|
|
|
|
int v = Integer.parseInt(stringList.get(5).split("\\.")[0]);
|
|
|
|
|
Row outRow = outSheet.createRow(++rowIndex);
|
|
|
|
|
ExcelKit.putData(outRow, Arrays.asList(String.valueOf(year),
|
|
|
|
|
"", "镇区", "", String.valueOf(v), areaName, cityName), dataStyle);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//乡村
|
|
|
|
|
for (List<String> stringList : dataList) {
|
|
|
|
|
//年份
|
|
|
|
|
int year = Integer.parseInt(stringList.get(0));
|
|
|
|
|
int v = Integer.parseInt(stringList.get(5).split("\\.")[0]);
|
|
|
|
|
Row outRow = outSheet.createRow(++rowIndex);
|
|
|
|
|
ExcelKit.putData(outRow, Arrays.asList(String.valueOf(year),
|
|
|
|
|
"", "乡村", "", String.valueOf(v), areaName, cityName), dataStyle);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//保存文件
|
|
|
|
|