Как я могу сказать удаление файла из удаления каталога с помощью JDK 7? - PullRequest
3 голосов
/ 08 июля 2010

Я использую WatchDervice JDK 7 для мониторинга каталогов.

Событие ENTRY_DELETE сообщает, что запись была удалена.Я могу получить имя этой записи, выполнив что-то похожее на:

WatchEvent<Path> ev = cast(event);
Path name = ev.context();
Path child = dir.resolve(name);

Я хочу знать, был ли удаленный элемент файлом или папкой.Естественно, я попытался child.isDirectory(), но это, конечно, не сработало, потому что элемент больше не существует.

Есть ли способ, без эвристики, сказать, был ли удаленный элемент файломкаталог?

1 Ответ

1 голос
/ 09 июля 2010

К сожалению, поскольку WatchService построен поверх службы файловых событий собственной операционной системы, он ограничен информацией, которую предоставляет собственная служба. Linux inotify указывает, какой тип объекта файловой системы был удален, но Microsoft FileSystemWatcher просто дает имя.

...