如何找出在Java中使用文件的进程?

时间:2013-03-19 21:17:51

标签: java file process move

我正在尝试在Java中将文件从一个目录移动到另一个目录,但是我收到以下错误消息“进程无法访问该文件,因为它正被另一个进程使用。”

如何找出在Java中使用此文件的进程?

我在Win 7上。

1 个答案:

答案 0 :(得分:1)

如果命令行方法可行,并且您使用的是类似Linux的系统,则lsof是您的朋友。 lsof有大约10个标志,但是根据您的需要,它应该如下:

lsof myfile

您应该获得类似于以下内容的输出:

COMMAND    PID    USER  FD   TYPE DEVICE  SIZE    NODE NAME
someprog   4660 foobar mem    REG  253,0 58400 4522314 myfile

修改

你说你正在使用Windows。我不熟悉Windows命令行工具。但是,这是一个可能有用的问题: How can I determine whether a specific file is open in Windows?