、およびイベントWatchService
のディレクトリ ツリーを監視する があります。問題は、 a のコンテキストがPath オブジェクトしか与えないことです。削除イベントでは、パスが通常のファイルのディレクトリを参照しているかどうかわかりません。ENTRY_CREATE
ENTRY_DELETE
ENTRY-MODIFY
WatchEvent<?>
WatchKey key = null;
try {
key = watcher.take();
} catch (InterruptedException e) {
e.printStackTrace();
}
for (WatchEvent<?> event : key.pollEvents()) {
if (event.kind() == StandardWatchEventKinds.OVERFLOW) {
continue;
}
Path parent = (Path) key.watchable();
Path p = parent.resolve((Path) event.context());
for (DirectoryModifiedListener listener : listeners) {
if (event.kind() == StandardWatchEventKinds.ENTRY_DELETE) {
// only do this if p referred to a file, not a directory
listener.onFileCreated(p);
}
}
}
p
私の質問は、パスが削除されたファイルまたはディレクトリを参照しているかどうかを判断する方法ですか? これは、API が公開するものでも可能ですか?