apache-poi - 如何更改 Apache POI SXSSFWorkbook 默认临时文件名

标签 apache-poi sxssf

我正在使用 POI 的 SXSSFWorkbench 类来创建非常大的工作簿。多个进程可能同时运行我的应用程序,因此我认为将 processId 附加到默认临时文件名是明智的。我不知道该怎么做,也找不到任何最新的编码示例。

谁能给我举个例子,或者给我概述一下必须做什么?我看到有一个静态的 TempFile.createTempFile 方法。我应该在实例化 SXSSFWorkbook 类之前使用类覆盖来执行它吗?还是之后?

我还看到有一个 DefaultTempFileCreationStrategy 类。也找不到如何使用它的示例。

最佳答案

Apache POI 为此使用的主要类是 TempFile

您要调用的方法是 TempFile.setTempFileCreationStrategy

您需要做的是创建您自己的类来实现接口(interface) TempFileCreationStrategy .这很好也很简单,只有两个方法,createTempDirectorycreateTempFile .

要了解所涉及的内容,您可以 look at the source code for DefaultTempFileCreationStrategy online here .这很简单,只需在线程和命名方面放入您自己需要的逻辑即可。

关于apache-poi - 如何更改 Apache POI SXSSFWorkbook 默认临时文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55463100/

相关文章:

Java Excel自动化单元格背景颜色重复setFillForegroundColor

java - 如何在java中打开xls文件,保存它,然后将其全部关闭?

java - 如何使用 Apache POI 在 word 文档中插入图像?

java excel读取一列

java - SXSSF 无法创建 Font 和 DateFormat

java - SXSSF:在输出到文件之前,它会将不在窗口中的行刷新到哪里?

java - Apache POI SXSSF 在刷新行上显示 NullPointerException

java - 使用 Apache POI - 检测到 Zip Bomb

java - Apache POI : Issue during setting foreground color in conditionalFormatting with SOLID_FILL pattern