2011-04-29 98 views
1

我想使用java刪除windows操作系統上的文件,外部進程可能會使用哪些時間文件,如何強制刪除或通過知道哪個進程使用該文件並殺死該進程或任何方式,任何代碼或方式?在java中刪除文件

回答

2

您可以通過JNI(http://www.atwistedweb.com/java/jni.html)或JNA(http://jna.java.net/)

但如何調用低級別的Windows程序關於更簡單的解決方案:下載Unlocker並使用ProcessBuilder運行。

4

Java沒有任何內置工具來找出打開特定文件的過程。這是操作系統特定的。你必須爲此運行一些外部工具,但是我不知道任何Windows命令行工具都允許你這樣做。

+0

+1注意:沒有這樣的工具; Windows無法刪除已鎖定的文件。 – 2011-04-29 10:24:13

+3

@Aaron Digulla:FYI:ther是工具'unlocker',可以做到這一點,所以我想在java中做到這一點 – 2011-04-29 10:27:27

+0

我站好了。 – 2011-04-29 10:40:08