为什么你在用JXL导出excel的时候会慢呢?

jxl默认system.gc();非常消耗系统资料

 

WorkbookSettings setting = new WorkbookSettings();
setting.setGCDisabled(true);
setting.setWriteAccess(null);
Workbook wb = Workbook.getWorkbook(new FileInputStream(tempFile),setting);

 

问题解决了。

以下是完整用例

WorkbookSettings setting = new WorkbookSettings();
setting.setGCDisabled(true);
setting.setWriteAccess(null);
// Excel获得文件
Workbook wb = Workbook.getWorkbook(new FileInputStream(tempFile),setting);
// 打开一个文件的副本,并且指定数据写回到原文件
WorkbookSettings setting1 = new WorkbookSettings();
setting1.setGCDisabled(true);
setting1.setWriteAccess(null);
book = Workbook.createWorkbook(new File(allPath), wb,setting1);
wb.close();//Workbook对象一定要关闭啊,不关的话你就等着内存溢出吧

 

你可能感兴趣的:(为什么你在用JXL导出excel的时候会慢呢?)