|
|
|
|
@ -374,7 +374,11 @@ public class ExcelUtil<T>
|
|
|
|
|
Map<String, Integer> cellMap = new HashMap<String, Integer>();
|
|
|
|
|
// 获取表头
|
|
|
|
|
Row heard = sheet.getRow(titleNum);
|
|
|
|
|
for (int i = 0; i < heard.getPhysicalNumberOfCells(); i++)
|
|
|
|
|
if (heard == null)
|
|
|
|
|
{
|
|
|
|
|
throw new UtilException("文件标题行为空,请检查Excel文件格式");
|
|
|
|
|
}
|
|
|
|
|
for (int i = 0; i < heard.getLastCellNum(); i++)
|
|
|
|
|
{
|
|
|
|
|
Cell cell = heard.getCell(i);
|
|
|
|
|
if (StringUtils.isNotNull(cell))
|
|
|
|
|
@ -382,10 +386,6 @@ public class ExcelUtil<T>
|
|
|
|
|
String value = this.getCellValue(heard, i).toString();
|
|
|
|
|
cellMap.put(value, i);
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
cellMap.put(null, i);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
// 有数据时才处理 得到类的所有field.
|
|
|
|
|
List<Object[]> fields = this.getFields();
|
|
|
|
|
@ -710,7 +710,7 @@ public class ExcelUtil<T>
|
|
|
|
|
}
|
|
|
|
|
if (Type.EXPORT.equals(type))
|
|
|
|
|
{
|
|
|
|
|
fillExcelData(index, row);
|
|
|
|
|
fillExcelData(index);
|
|
|
|
|
addStatisticsRow();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@ -723,7 +723,7 @@ public class ExcelUtil<T>
|
|
|
|
|
* @param row 单元格行
|
|
|
|
|
*/
|
|
|
|
|
@SuppressWarnings("unchecked")
|
|
|
|
|
public void fillExcelData(int index, Row row)
|
|
|
|
|
public void fillExcelData(int index)
|
|
|
|
|
{
|
|
|
|
|
int startNo = index * sheetSize;
|
|
|
|
|
int endNo = Math.min(startNo + sheetSize, list.size());
|
|
|
|
|
@ -731,7 +731,7 @@ public class ExcelUtil<T>
|
|
|
|
|
|
|
|
|
|
for (int i = startNo; i < endNo; i++)
|
|
|
|
|
{
|
|
|
|
|
row = sheet.createRow(currentRowNum);
|
|
|
|
|
Row row = sheet.createRow(currentRowNum);
|
|
|
|
|
T vo = (T) list.get(i);
|
|
|
|
|
int column = 0;
|
|
|
|
|
int maxSubListSize = getCurrentMaxSubListSize(vo);
|
|
|
|
|
|