我正在打开一个使用 iText 创建的 PDF 文件。无需在 PDF 渲染器中打开它,只需正常打开它并关闭它,我就可以删除并覆盖该文件。但是,一旦我使用 PDF 渲染器打开它,我就会将其关闭。我无法删除 PDF 或替换它。
ByteBuffer buf;
...
randomAccessFile = new RandomAccessFile(new File(file), "r");
fileChannel = randomAccessFile.getChannel();
buf = fileChannel.map(FileChannel.MapMode.READ_ONLY, 0, fileChannel.size());
pdfFile = new PDFFile(buf);
这里的代码然后获取图像并将其放入面板中。
然后我关闭上述项目。
它仍然在某处打开,但我不知道在哪里,非常感谢任何帮助。
最佳答案
错误似乎出在未显示的其余部分(或关闭 fileChannel)。
PDFFile pdfFile = new PDFFile(new File(file));
PdfReader pdfReader = pdfFile.getPdfReader();
try {
...
} finally {
pdfReader.close();
}
关于java - 使用 PDF 渲染器打开后无法删除 pdf 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13713919/