Merge pull request #718 from dataease/pr@v1.2@excel

fix: 解析excel出错
This commit is contained in:
taojinlong 2021-08-27 17:43:49 +08:00 committed by GitHub
commit ee8370a078
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 15 additions and 5 deletions

View File

@ -57,13 +57,11 @@ public class ExcelReaderUtil {
ExcelXlsxReader excelXlsxReader = new ExcelXlsxReader(); ExcelXlsxReader excelXlsxReader = new ExcelXlsxReader();
excelXlsxReader.process(inputStream); excelXlsxReader.process(inputStream);
System.out.println(excelXlsxReader.totalSheets.size()); System.out.println(excelXlsxReader.totalSheets.size());
System.out.println(excelXlsxReader.totalSheets.get(1).getExcelLable()); System.out.println(excelXlsxReader.totalSheets.get(0).getExcelLable());
for (TableFiled field : excelXlsxReader.totalSheets.get(1).getFields()) { for (TableFiled field : excelXlsxReader.totalSheets.get(0).getFields()) {
System.out.println(new Gson().toJson(field)); System.out.println(new Gson().toJson(field));
} }
System.out.println(excelXlsxReader.totalSheets.get(0).getData().get(0)); System.out.println(excelXlsxReader.totalSheets.get(0).getData().get(0));
System.out.println(excelXlsxReader.totalSheets.get(0).getData().get(1));
System.out.println(excelXlsxReader.totalSheets.get(0).getData().get(2));
} else { } else {
throw new Exception("文件格式错误fileName的扩展名只能是xls或xlsx。"); throw new Exception("文件格式错误fileName的扩展名只能是xls或xlsx。");
@ -71,7 +69,7 @@ public class ExcelReaderUtil {
} }
public static void main(String[] args) throws Exception { public static void main(String[] args) throws Exception {
String file ="赤收管理 2.xlsx"; String file ="Metersphere_case_DataEase功能用例.xlsx";
ExcelReaderUtil.readExcel(file, new FileInputStream("/Users/taojinlong/Desktop/" + file)); ExcelReaderUtil.readExcel(file, new FileInputStream("/Users/taojinlong/Desktop/" + file));
} }
} }

View File

@ -237,6 +237,14 @@ public class ExcelXlsxReader extends DefaultHandler {
if (isTElement) {//这个程序没经过 if (isTElement) {//这个程序没经过
//将单元格内容加入rowlist中在这之前先去掉字符串前后的空白符 //将单元格内容加入rowlist中在这之前先去掉字符串前后的空白符
String value = lastIndex.trim(); String value = lastIndex.trim();
if(curRow==1){
TableFiled tableFiled = new TableFiled();
tableFiled.setFieldType("TEXT");
tableFiled.setFieldSize(65533);
tableFiled.setFieldName(value);
tableFiled.setRemarks(value);
this.fields.add(tableFiled);
}
cellList.add(curCol, value); cellList.add(curCol, value);
curCol++; curCol++;
isTElement = false; isTElement = false;
@ -432,6 +440,10 @@ public class ExcelXlsxReader extends DefaultHandler {
} }
} }
} }
if(curCol==1){
System.out.println(type);
System.out.println(nextDataType);
}
return thisStr; return thisStr;
} }