为有中文需求的客户提供多渠道中文技术支持.

Sun Apr 14, 2024 10:01 am

spire.xls for java读取excel内存无法释放
1.我在用spire.xls for java读取excel 时候 excel有密码加密 如果密码错误 也会消耗掉0.6G左右的内存 然后jvm的内存不会释放
2.我导入没有密码的excel 文件有1.2M左右 20多个sheet页 会占用0.3-0.5G内存 然后也不会释放
3.excel 出力的时候,30多个sheet页 ,也会消耗0.4G 左右内存 不会释放

hanfenglong
 
Posts: 1
Joined: Mon Jun 14, 2021 11:41 am

Mon Apr 15, 2024 2:34 am

您好,

感谢您留言提问。
请问您在代码中使用代码释放worksheet和workbook对象了吗?如果没有,可以在程序结束时调用dispose方法,如下:
Code: Select all
String input = "data/testDate.xlsx";


Workbook workbook = new Workbook();
workbook.loadFromFile(input);


Worksheet sheet = workbook.getWorksheets().get(0);
sheet.dispose();
workbook.dispose();

另外,您是否使用最新版本Spire.Xls14.4.1测试,没有的话,建议更新到最新版测试。
如果使用最新版本且调用了dispose方法后,还存在此问题,请提供以下信息来帮助我们做进一步调查。
1) 您的测试代码。
2) 出现问题的Excel文档,您可以附加在此贴中或者发送到我们的邮箱([email protected])
3) 系统环境,如win10.

Sincerely
Abel
E-iceblue support team
User avatar

Abel.He
 
Posts: 1010
Joined: Tue Mar 08, 2022 2:02 am

Return to 中文技术支持