提交 64e9354d authored 作者: taojinlong's avatar taojinlong

fix: 精简模式添加 Excel数据集

上级 ccffc4f2
......@@ -25,6 +25,16 @@ public class ExcelXlsReader implements HSSFListener {
private int minColums = -1;
public Integer getObtainedNum() {
return obtainedNum;
}
public void setObtainedNum(Integer obtainedNum) {
this.obtainedNum = obtainedNum;
}
private Integer obtainedNum = null;
private POIFSFileSystem fs;
/**
......@@ -331,7 +341,7 @@ public class ExcelXlsReader implements HSSFListener {
totalSheets.add(excelSheetData);
}else {
List<String> tmp = new ArrayList<>(cellList);
if(totalSheets.stream().filter(s->s.getExcelLable().equalsIgnoreCase(sheetName)).collect(Collectors.toList()).get(0).getData().size() < 100){
if(obtainedNum != null && totalSheets.stream().filter(s->s.getExcelLable().equalsIgnoreCase(sheetName)).collect(Collectors.toList()).get(0).getData().size() < obtainedNum){
totalSheets.stream().filter(s->s.getExcelLable().equalsIgnoreCase(sheetName)).collect(Collectors.toList()).get(0).getData().add(tmp);
}
......
......@@ -121,6 +121,15 @@ public class ExcelXlsxReader extends DefaultHandler {
*/
private boolean isDateFormat = false;
public Integer getObtainedNum() {
return obtainedNum;
}
public void setObtainedNum(Integer obtainedNum) {
this.obtainedNum = obtainedNum;
}
private Integer obtainedNum = null;
public List<TableField> getFields() {
return fields;
......@@ -181,7 +190,7 @@ public class ExcelXlsxReader extends DefaultHandler {
*/
@Override
public void startElement(String uri, String localName, String name, Attributes attributes) throws SAXException {
if(curRow>101){
if(this.obtainedNum !=null && curRow>this.obtainedNum){
return;
}
......@@ -219,7 +228,7 @@ public class ExcelXlsxReader extends DefaultHandler {
*/
@Override
public void characters(char[] ch, int start, int length) throws SAXException {
if(curRow>101){
if(this.obtainedNum !=null && curRow>this.obtainedNum){
return;
}
lastIndex += new String(ch, start, length);
......@@ -235,7 +244,7 @@ public class ExcelXlsxReader extends DefaultHandler {
*/
@Override
public void endElement(String uri, String localName, String name) throws SAXException {
if(curRow>101){
if(this.obtainedNum !=null && curRow>this.obtainedNum){
return;
}
//t元素也包含字符串
......
......@@ -1917,11 +1917,13 @@ public class DataSetTableService {
String suffix = filename.substring(filename.lastIndexOf(".") + 1);
if (StringUtils.equalsIgnoreCase(suffix, "xls")) {
ExcelXlsReader excelXlsReader = new ExcelXlsReader();
excelXlsReader.setObtainedNum(100);
excelXlsReader.process(inputStream);
excelSheetDataList = excelXlsReader.totalSheets;
}
if (StringUtils.equalsIgnoreCase(suffix, "xlsx")) {
ExcelXlsxReader excelXlsxReader = new ExcelXlsxReader();
excelXlsxReader.setObtainedNum(100);
excelXlsxReader.process(inputStream);
excelSheetDataList = excelXlsxReader.totalSheets;
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论