设为首页 加入收藏

TOP

简单分享-项目中监听文件夹及文件的方法
2023-07-25 21:32:50 】 浏览:36
Tags:简单分 项目中 文件夹 文件的 方法

首先实现对应接口

import org.apache.commons.io.monitor.FileAlterationListenerAdaptor;

import java.io.File;

public class FilterListener extends FileAlterationListenerAdaptor {
    @Override
    public void onDirectoryCreate(File directory) {
        System.out.println("sdafsdfsafd");
    }

    @Override
    public void onDirectoryChange(File directory) {
        System.out.println("sdafsdfsafd");
    }

    @Override
    public void onDirectoryDelete(File directory) {
        System.out.println("sdafsdfsafd");
    }
}

其次写对应监听器

import org.apache.commons.io.filefilter.FileFilterUtils;
import org.apache.commons.io.filefilter.HiddenFileFilter;
import org.apache.commons.io.filefilter.IOFileFilter;
import org.apache.commons.io.monitor.FileAlterationMonitor;
import org.apache.commons.io.monitor.FileAlterationObserver;

import java.io.File;
import java.util.concurrent.TimeUnit;

public class wertwert {

    public FileAlterationMonitor getMonitor(){
        IOFileFilter directories = FileFilterUtils.and(FileFilterUtils.directoryFileFilter(), HiddenFileFilter.VISIBLE);
        IOFileFilter files = FileFilterUtils.and(FileFilterUtils.fileFileFilter(), FileFilterUtils.suffixFileFilter(".log"));
        IOFileFilter fileFilter = FileFilterUtils.or(directories,files);

        FileAlterationObserver observer = new FileAlterationObserver(new File("E://325345"),fileFilter);
        observer.addListener(new FilterListener());
        return new FileAlterationMonitor(TimeUnit.SECONDS.toMillis(1),observer);

    }
}

最后实现springboot的CommandLineRunner

@Component
class ctt implements CommandLineRunner {
    private wertwert wertwert1 = new wertwert();
    @Override
    public void run(String... args) throws Exception {
        System.out.println("asdf");
        FileAlterationMonitor fileAlterationMonitor = wertwert1.getMonitor();
        try{
            fileAlterationMonitor.start();
        }catch (Exception e){
            System.out.println("asdfasdf");
        }
    }
}
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇java -- 异常处理、Collection、I.. 下一篇java -- 练习题

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目