|
|
|
@ -4,6 +4,7 @@ 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 com.jfinal.kit.StrKit;
|
|
|
|
|
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
|
|
|
|
|
import org.apache.poi.openxml4j.util.ZipSecureFile;
|
|
|
|
|
import org.apache.poi.ss.usermodel.Row;
|
|
|
|
@ -46,13 +47,13 @@ public class C9 {
|
|
|
|
|
//样式
|
|
|
|
|
XSSFCellStyle headerStyle = ExcelKit.getHeaderStyle(outWorkbook);
|
|
|
|
|
XSSFCellStyle dataStyle = ExcelKit.getDataStyle(outWorkbook);
|
|
|
|
|
|
|
|
|
|
//拷贝文件头
|
|
|
|
|
ExcelKit.CopyHead(sampleExcelPath, outSheet, headerStyle);
|
|
|
|
|
|
|
|
|
|
//找到parentPath下一级目录中所有文件
|
|
|
|
|
//递归获取指定目录下所有文件
|
|
|
|
|
List<File> files = FileUtil.loopFiles(parentPath, file -> true);
|
|
|
|
|
int rowIndex = 0;
|
|
|
|
|
|
|
|
|
|
//处理这个目录
|
|
|
|
|
if (files != null) {
|
|
|
|
|
for (File file : files) {
|
|
|
|
@ -64,6 +65,10 @@ public class C9 {
|
|
|
|
|
|
|
|
|
|
//判断是否为docx文件
|
|
|
|
|
if (fileName.endsWith(".docx") && !fileName.startsWith("~")) {
|
|
|
|
|
if (StrKit.isBlank(cityName)) {
|
|
|
|
|
System.out.println("文件名无法解析为城市:" + fileName);
|
|
|
|
|
System.exit(0);
|
|
|
|
|
}
|
|
|
|
|
System.out.println("正在处理" + cityName + "市州文件...");
|
|
|
|
|
//数据在图表1
|
|
|
|
|
int chartNumber = 1;
|
|
|
|
@ -72,7 +77,7 @@ public class C9 {
|
|
|
|
|
//expectLimit:期望的数据行数,首先用POI进行解析,如果获取的行数大于预期行数,就是正确的,否则就需要二次调用python进行读取
|
|
|
|
|
List<List<String>> source = ExcelKit.getChartData(file.getAbsolutePath(), chartNumber, 6, 20);
|
|
|
|
|
|
|
|
|
|
//遍历source1
|
|
|
|
|
//遍历source
|
|
|
|
|
for (List<String> r : source) {
|
|
|
|
|
Row outRow = outSheet.createRow(++rowIndex);
|
|
|
|
|
// 导出数据
|
|
|
|
|