2013-09-22 35 views
0

我有我將尋找ZIP文件的目錄,然後我將從這些ZIP文件中用TrueZIP 7提取文件。我的問題是當我運行我的應用程序時,我無法在Windows中運行應用程序時刪除/編輯文件。我不明白爲什麼會發生這種情況,因爲當我在Windows中訪問文件時,我的應用程序沒有對文件進行任何操作,爲什麼這些文件被鎖定到我的Java應用程序?在Java和Windows文件中打開的文件不能被接受,甚至Java不再使用文件

我有下面的代碼:

Path dir = FileSystems.getDefault().getPath(directory); 
try (DirectoryStream<Path> stream = Files.newDirectoryStream(dir)) { 
    for (Path file : stream) { 
     // do something with file 
    } 
} catch (IOException | DirectoryIteratorException x) { 
    System.err.println(x); 
} 
// Why those files are still locked to my app even when execution is here ??? 
+0

是否所有文件相關的流都關閉了?並且正在調用任何外部進程? – initramfs

回答

1

我忘了打電話給unmount

TVFS.umount(); 

現在我可以刪除/編輯文件。