作者 RuoYi

Excel导入数据临时文件无法删除问题(I7KIXX)

@@ -288,9 +288,23 @@ public class ExcelUtil<T> @@ -288,9 +288,23 @@ public class ExcelUtil<T>
288 * @param is 输入流 288 * @param is 输入流
289 * @return 转换后集合 289 * @return 转换后集合
290 */ 290 */
291 - public List<T> importExcel(InputStream is) throws Exception 291 + public List<T> importExcel(InputStream is)
292 { 292 {
293 - return importExcel(is, 0); 293 + List<T> list = null;
  294 + try
  295 + {
  296 + list = importExcel(is, 0);
  297 + }
  298 + catch (Exception e)
  299 + {
  300 + log.error("导入Excel异常{}", e.getMessage());
  301 + throw new UtilException(e.getMessage());
  302 + }
  303 + finally
  304 + {
  305 + IOUtils.closeQuietly(is);
  306 + }
  307 + return list;
294 } 308 }
295 309
296 /** 310 /**
@@ -336,7 +350,6 @@ public class ExcelUtil<T> @@ -336,7 +350,6 @@ public class ExcelUtil<T>
336 } 350 }
337 // 获取最后一个非空行的行下标,比如总行数为n,则返回的为n-1 351 // 获取最后一个非空行的行下标,比如总行数为n,则返回的为n-1
338 int rows = sheet.getLastRowNum(); 352 int rows = sheet.getLastRowNum();
339 -  
340 if (rows > 0) 353 if (rows > 0)
341 { 354 {
342 // 定义一个map用于存放excel列的序号和field. 355 // 定义一个map用于存放excel列的序号和field.