在java中,如何监视多个目录

在java中,如何监视多个目录,java,watch,Java,Watch,我想监控多个文件夹是否在文件夹中添加了新文件。 如果文件被添加到文件夹中,我想得到文件名。 如何执行此操作。库中有一个名为的组件。我想这正是你想要的。请试试这个 for(;;){ System.out.println("START MONITORING **************"); Path faxFolder = Paths.get("E:\\activiti\\monitor\\m1"); Path faxFolder2 = Paths.get("E:\

我想监控多个文件夹是否在文件夹中添加了新文件。 如果文件被添加到文件夹中,我想得到文件名。 如何执行此操作。

库中有一个名为的组件。我想这正是你想要的。

请试试这个

for(;;){

    System.out.println("START MONITORING  **************");


    Path faxFolder = Paths.get("E:\\activiti\\monitor\\m1");
    Path faxFolder2 = Paths.get("E:\\activiti\\monitor\\m2");
    WatchService watchService = FileSystems.getDefault().newWatchService();
    faxFolder.register(watchService, StandardWatchEventKinds.ENTRY_CREATE);
    faxFolder2.register(watchService, StandardWatchEventKinds.ENTRY_CREATE);


    boolean valid = true;
    WatchKey watchKey = watchService.take();
    for (WatchEvent<?> event : watchKey.pollEvents()) {
        WatchEvent.Kind kind = event.kind();
        if (StandardWatchEventKinds.ENTRY_CREATE.equals(event.kind())) {
            String fileName = event.context().toString();
            System.out.println(fileName);

        }
    }



}
(;;)的
{
System.out.println(“启动监控*************”;
Path faxFolder=Path.get(“E:\\activiti\\monitor\\m1”);
Path faxFolder2=Path.get(“E:\\activiti\\monitor\\m2”);
WatchService WatchService=FileSystems.getDefault().newWatchService();
faxFolder.register(watchService、StandardWatchEventTypes.ENTRY\u CREATE);
faxFolder2.注册(watchService、StandardWatchEventTypes.ENTRY\u CREATE);
布尔有效=真;
WatchKey WatchKey=watchService.take();
for(WatchEvent事件:watchKey.pollEvents()){
WatchEvent.Kind-Kind=event.Kind();
if(StandardWatchEventTypes.ENTRY_CREATE.equals(event.kind())){
字符串文件名=event.context().toString();
System.out.println(文件名);
}
}
}
和的副本