Java如何监视文件或目录的更改?
package org.nhooo.example.io;
import java.io.IOException;
import java.nio.file.*;
import static java.nio.file.StandardWatchEventKinds.*;
public class FileWatchDemo {
public static void main(String[] args) {
try {
//创建WatchService的实例。
WatchService watcher = FileSystems.getDefault().newWatchService();
//在下面的监视服务中注册logDir。
Path logDir = Paths.get("/Users/nhooo/temp/");
logDir.register(watcher, ENTRY_CREATE, ENTRY_MODIFY, ENTRY_DELETE);
//在侦听更改通知时监视logDir。
while (true) {
WatchKey key = watcher.take();
for (WatchEvent<?> event : key.pollEvents()) {
WatchEvent.Kind<?> kind = event.kind();
if (ENTRY_CREATE.equals(kind)) {
System.out.println("Entry was created on log dir.");
} else if (ENTRY_MODIFY.equals(kind)) {
System.out.println("Entry was modified on log dir.");
} else if (ENTRY_DELETE.equals(kind)) {
System.out.println("Entry was deleted from log dir.");
}
}
key.reset();
}
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}要获取创建,修改或删除的文件,您可以看到以下示例:使用WatchService时如何获取文件名?
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短