如何在Java中关闭PST文件?
我正在使用java-libpst.0.7.jar来阅读PST消息。我正在使用以下代码打开PST文件以读取消息。
PSTFile pstFile = new PSTFile("Path of the pst file");
在获得消息详细信息后,我必须关闭PST文件一次。但是没有关闭 PST 文件的选项。我该怎么做?
我正在使用java-libpst.0.7.jar来阅读PST消息。我正在使用以下代码打开PST文件以读取消息。
PSTFile pstFile = new PSTFile("Path of the pst file");
在获得消息详细信息后,我必须关闭PST文件一次。但是没有关闭 PST 文件的选项。我该怎么做?
通过阅读代码,很明显libpst确实没有公开“close”方法。当 垃圾回收时,该方法确实会关闭基础文件,因此我建议在尽可能小的范围内使用它并尽快处理它,但除此之外,您无能为力(除了向项目报告问题 - 或者更好的是,自己发送补丁,当然)。finalize()
PSTFile
编辑1:
有一个返回基础文件的方法,所以你可以:PSTFile
getFileHandle()
close()
PSTFile pstFile = new PSTFile("Path of the pst file");
// use the file
pstFile.getFileHandle().close();
编辑2:
我已经创建了一个拉取请求来添加.让我们看看它是如何扇形的。PSTFile.close()
编辑3:
我的拉取请求已被合并(谢谢理查德约翰逊!在下一个版本中(或者如果您自己构建java-libpst),您将能够直接调用。close()
PSTFile
PSTFile
在其方法中关闭文件句柄,以便在垃圾回收时关闭文件。我不认为这种清理资源是很好的风格,因为可能会很久以后甚至永远不会被调用。finalize
PSTFile
finalize