gpt4 book ai didi

java - Apache POI 花费了极长的时间写入工作簿

转载 作者:行者123 更新时间:2023-12-02 00:57:07 27 4
gpt4 key购买 nike

我正在使用 Apache POI 创建记录并将其保存到工作簿中。我有近 5000 多条新记录需要写入并保存到工作簿中。但在将fileOutputStream写入工作簿时,执行基本上停止并减慢。

我的意思是,在执行这一行时:

workbook.write(fileOutputStream);

处理 5000 多条记录时几乎停止。我验证了在工作簿中写入大约需要1 小时(!)。

如何提高性能并克服这个缺点?请建议...

** 注意:其余代码是正常的Apache POI相关代码,它们执行得很好,没有问题,因此我没有提及所有这些代码。只有我被困在上面那行。

我在这里发现了一个讨论: FileOutputStream (Apachhe POI) taking too long time to save

但是,这对我没有帮助。我需要保存整个文件。

最佳答案

我理解的另一个解决方案是,在迭代行并创建单元格时,不要继续声明 CellStylesheet.autoSizeColumn(colNumber) 在循环内部,而不是在循环外部仅声明一次这两个值,并仅在循环内部设置值和样式,即 cell.setCellStylecell.setCellValue.

每次迭代时都声明上述 2 点,基本上会从根本上降低 POI 的性能。

关于java - Apache POI 花费了极长的时间写入工作簿,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61221133/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com