import java.io.IOException; import java.nio.file.*; public class DirectoryWatcher { public static void main(String[] args) throws IOException, InterruptedException { WatchService watchService = FileSystems.getDefault().newWatchService(); Path path = Paths.get("F:", "share").toAbsolutePath(); path.register(watchService, StandardWatchEventKinds.ENTRY_CREATE, StandardWatchEventKinds.ENTRY_MODIFY, StandardWatchEventKinds.ENTRY_DELETE); while(true) { WatchKey watchKey = watchService.take(); for (WatchEvent event : watchKey.pollEvents()) { if (event.kind() == StandardWatchEventKinds.ENTRY_CREATE) { System.out.println("Create " + path.resolve((Path) event.context()).toAbsolutePath()); } else if (event.kind() == StandardWatchEventKinds.ENTRY_MODIFY) { System.out.println("Modify " + path.resolve((Path) event.context()).toAbsolutePath()); } else { System.out.println("Delete " + path.resolve((Path) event.context()).toAbsolutePath()); } } watchKey.reset(); // Cancel the watch // watchKey.cancel(); } } }
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/10370.html