在java中,如何查看多个目录

时间:2011-05-21 08:44:09

标签: java watch

我想监视多个文件夹是否在文件夹中添加了新文件。 如果文件被添加到文件夹中,我想得到他的文件名称。  怎么做。

2 个答案:

答案 0 :(得分:2)

File Monitor apache commons库中有一个名为IO的组件。我认为这正是你所寻找的。

答案 1 :(得分:1)

请试试这个,

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);

        }
    }



}