【问题标题】:Delete PDF file in iText在 iText 中删除 PDF 文件
【发布时间】:2014-06-09 16:43:08
【问题描述】:

我正在使用 iText 创建 PDF

 FileOutputStream fileOutputStream=new FileOutputStream(filePath);
 PdfWriter writer = PdfWriter.getInstance(document,fileOutputStream);
 document.open();

并且该特定文件将保存在给定路径(提及文件夹)中,并且路径在 PripertyLibrary 文件中提及。

我可以在提及路径中看到生成的文件。现在我想在函数之后从文件夹中删除生成的PDF文件。

请帮帮我! 提前致谢...

【问题讨论】:

  • 到目前为止你尝试过什么?我认为 Files.delete() 将是您最好的选择。 (docs.oracle.com/javase/7/docs/api/java/nio/file/…
  • 我试过 private void DeleteFile(String actaulafileName) { String fileName = actaulafileName;文件 f = 新文件(文件名); if (!f.exists()) throw new IllegalArgumentException("删除:没有这样的文件或目录:" + fileName); if (!f.canWrite()) throw new IllegalArgumentException("删除:写保护:" + fileName); if (f.isDirectory()) { String[] 文件 = f.list(); if (files.length > 0) throw new IllegalArgumentException("删除:目录不为空:" + fileName); }
  • 请将您尝试过的内容以及您遇到的任何错误或异常情况填写在您的问题中。
  • private void DeleteFile(String actaulafileName){ String fileName = actaulafileName;文件 f = 新文件(文件名); if (!f.exists()) throw new IllegalArgumentException("删除:没有这样的文件或目录:" + fileName); if (!f.canWrite()) throw new IllegalArgumentException("删除:写保护:" + fileName); // 如果是目录,确保为空 if (f.isDirectory()) { String[] files = f.list(); if (files.length > 0) throw new IllegalArgumentException( }
  • 当我使用 f.delete();它给了我错误 IllegalArgumentException("Delete: delete failed");

标签: java pdf-generation itext


【解决方案1】:

close() 尽你所能:document、writer、fileOutputStream;也许与try {} finally {}try (...) {}。可能应用程序使文件保持打开状态。

然后

File file = new File(filePath);
if (!file.delete()) {
    ... error
}

背景是,iText 使用一些部分 API 和它们自己的 close 方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-12
    • 2011-01-28
    • 2019-01-11
    • 1970-01-01
    • 2018-11-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多