0

我使用 ICEpdf 库在我的桌面 java 应用程序中显示 PDF。应用程序在运行时向 PDF 添加注释,但不更改原始文件——更改仅在一个“会话”期间显示。我最近发现该应用程序会创建大量临时文件,这些文件会占用大量磁盘空间。

方法 org.icepdf.core.pobjects.Document.setInputStream 具有以下代码:

// Delete temp file on exit 
tempFile.deleteOnExit();

所以我想它必须在使用临时文件后删除它们,但它不会:

ICE pdf 临时文件

如何以编程方式删除应用程序在退出时创建的所有文件或使标准文件删除工作?

4

1 回答 1

1

获取临时文件夹路径:

FileSystems.getDefault().getPath(System.getProperty("java.io.tmpdir"))

要删除文件:

try (DirectoryStream<Path> paths = Files.newDirectoryStream(pathToDir, regex)){
        paths.forEach(path -> path.toFile().delete());
    } catch (IOException e) {
        // handle io exception
    }

其中正则表达式是文件名模式。在你的情况下:“IcePdf*”

于 2016-02-08T19:58:19.977 回答