【发布时间】:2012-02-02 09:04:51
【问题描述】:
我正在使用 JNotify 来监视一个文件夹,当一个新文件进入该文件夹时,我需要解析该文件并将该文件移动到其他文件夹中,当它执行文件移动代码时“它说它被其他进程使用”。
因为这个文件已经被 JNotify 监视过了,所以我不能移动它。
请帮我出出主意。
【问题讨论】:
标签: java file-io filesystemwatcher jnotify
我正在使用 JNotify 来监视一个文件夹,当一个新文件进入该文件夹时,我需要解析该文件并将该文件移动到其他文件夹中,当它执行文件移动代码时“它说它被其他进程使用”。
因为这个文件已经被 JNotify 监视过了,所以我不能移动它。
请帮我出出主意。
【问题讨论】:
标签: java file-io filesystemwatcher jnotify
【讨论】:
您的 Java 代码必须有一个打开的文件句柄。确保关闭所有读取器或其他 File 对象并进行垃圾收集。我遇到了同样的问题,在分析代码后,我发现InputStreamReader 在捕获异常时没有关闭。我用reader.close() 在try catch 块中添加了finally{} 块,问题就解决了。
【讨论】: