java删除zip文件_java – 解压缩后无法删除zip文件?
我正面临一个不寻常的问题.我正在建造一个计划每5分钟运行一次的工具.
它将从特定目录中获取zip文件,并将文件(取决于文件名)提取到目标.我使用zipentry获取zip文件中的每个文件名,然后根据需要解压缩然后我将它们(zip文件,一旦我完成zip中的所有文件)备份到特定目录,然后删除zip文件.但有时(并非总是)zip文件不会被删除.因为我使用的是fileutils.forcedelete().我收到一个例外:无法删除文件.所以我改为使用fileutils.forcedeleteonexit()的代码仍然有些文件保留在源代码中.
以下是我的代码示例:
sourceFile=new file(zipfile);
zipFile = new ZipFile(sourceFile);
zEnum = (Enumeration) zipFile.entries();
for (int a = 0; a < zipFile.size(); a++)
{
ZipEntry zE = zEnum.nextElement();
//Function uses zip4j for extracting. No streams used.
extract(String sourceZipFile, String fileNameToExtract, String outputFolder);
}
//I tried it with finally either
zipFile.close();
//Using fileutils to copy. No streams used.
copyFile(sourceFile, backup);
FileUtils.forceDeleteOnExit(sourceFile);
没有使用流,但我有时(不总是)锁定文件.
什么似乎是这里的错误?是zip4j提取导致问题还是其他什么?我使用的是zip4j 1.3.1.
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
