|
|
|
@ -6,6 +6,7 @@ import com.dsideal.base.Tools.Util.LocalMysqlConnectUtil;
|
|
|
|
|
import com.dsideal.base.Tools.Util.ReadDocxUtil;
|
|
|
|
|
import com.jfinal.kit.StrKit;
|
|
|
|
|
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;
|
|
|
|
@ -13,6 +14,7 @@ import org.dom4j.DocumentException;
|
|
|
|
|
|
|
|
|
|
import java.io.File;
|
|
|
|
|
import java.io.IOException;
|
|
|
|
|
import java.util.Arrays;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
|
|
public class A8 {
|
|
|
|
@ -84,12 +86,32 @@ public class A8 {
|
|
|
|
|
}
|
|
|
|
|
//县区名称
|
|
|
|
|
System.out.println("正在进行" + cityName + "-" + areaName + "的数据填充~");
|
|
|
|
|
int firstChartNumber = 1;
|
|
|
|
|
List<List<String>> source1 =
|
|
|
|
|
ExcelKit.getChartData(file.getAbsolutePath(), firstChartNumber, 0);//从2017年开始
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ExcelKit.printTable(source1);
|
|
|
|
|
int chartNumber = 1;
|
|
|
|
|
List<List<String>> source =
|
|
|
|
|
ExcelKit.getChartData(file.getAbsolutePath(), chartNumber, 0);//从2017年开始
|
|
|
|
|
|
|
|
|
|
//需要处理下人与万人的单位兼容
|
|
|
|
|
int mul = 1;
|
|
|
|
|
if (source != null) {
|
|
|
|
|
//本例中要乘以多少呢?
|
|
|
|
|
String xmlPath = ExcelKit.DocxUnzipDirectory + "word\\charts\\chart" + chartNumber + ".xml";
|
|
|
|
|
mul = ExcelKit.getMul(xmlPath);
|
|
|
|
|
|
|
|
|
|
for (List<String> row : source) {
|
|
|
|
|
String year = row.getFirst().split("\\.")[0];
|
|
|
|
|
Row outRow = outSheet.createRow(++rowIndex);
|
|
|
|
|
String q = row.get(1);
|
|
|
|
|
if (StrKit.isBlank(q)) {
|
|
|
|
|
q = "0";
|
|
|
|
|
}
|
|
|
|
|
String v = String.format("%.2f", Double.parseDouble(q) * mul/10000);
|
|
|
|
|
if (Integer.parseInt(year) <= 2023) {
|
|
|
|
|
ExcelKit.putData(outRow, Arrays.asList(cityName, areaName, year, v, ""), dataStyle);
|
|
|
|
|
} else {
|
|
|
|
|
ExcelKit.putData(outRow, Arrays.asList(cityName, areaName, year, "", v), dataStyle);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//保存文件
|
|
|
|
|