首页 > 其他分享 >简单分享-项目中监听文件夹及文件的方法

简单分享-项目中监听文件夹及文件的方法

时间:2023-04-09 11:57:17浏览次数:35  
标签:FileFilterUtils public 文件夹 io org apache import 分享 监听

首先实现对应接口

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

标签:FileFilterUtils,public,文件夹,io,org,apache,import,分享,监听
From: https://www.cnblogs.com/studymyself/p/17300079.html

相关文章

  • JS事件监听
    事件绑定方式一:通过HTML标签中的事件属性进行绑定<inputtype="button"onclick="on()"value="按钮1"><script>functionon(){alert('我被点击了!')};</script>方式二:通过DOM元素属性绑定<inputtype="button"id="b......
  • 新浪博客营销经验分享,优化推广两不误
    以前做过一个人才网站,通过新浪博客来做过相关营销。所以今天分享一些新浪博客的营销经验。对于新浪博客,有着非常好的优势,因为它的权重,当你在新浪博客上发布文章(原创基础),基本都是秒收。搜索引擎对于新浪博客的响应是非常快的。新浪博客的营销如何做?1.建立博客账号当然现在新浪博客处......
  • 1233. 删除子文件夹
    题目链接:1233.删除子文件夹方法一:排序+循环解题思路先对\(folder\)数组根据字典序进行排序,排序完成后,扫描\(folder\)数组。由于在同一个高层目录下的文件夹在同一段区域,那么这一段区域的第一个文件夹就是这一系列文件夹的最高层目录\((high)\),将其加入结果数组中。当出......
  • ps 备忘清单_开发速查表分享
    ps命令速查备忘清单Linux我们提供了一个名为ps的实用程序,用于查看与系统上的进程相关的信息,它是ProcessStatus的缩写这份ps命令备忘清单的快速参考列表,包含常用选项和示例。入门,为开发人员分享快速参考备忘单。开发速查表大纲入门语法示例查看系统上的每个......
  • 记一次达梦数据库虚拟表SQL优化记录分享
    前言:遇到问题不要怕,先看一看。语句看懂了,创建个索引,优化个处理方式,30S变0.3秒,速度提升90倍。 背景:达梦数据库、督办定制功能的一个查询列表慢(虚拟表)。语句:selectidasdbrw,hzrwnr,createdate,BB,whbh01,whbh02,whbh03,zkh,ykh,sfyrq,qtkckry,(selectcount(wfrb.requestid)from......
  • 从功能到年薪30W+的测试开发工程师,分享我这10年的职业规划路线
     求职?择业?跳槽?职业规划?作为一名初出茅庐的软件测试员,职业发展的道路的确蜿蜒曲折,面对一次次的岗位竞争,挑战一道道的面试关卡,一边带着疑惑,一边又要做出选择,只能无奈的感叹:比你优秀的人比你还努力,你有什么资格不去奋斗……那软件测试员,你究竟该如何规划下一份工作?路该怎么走......
  • 分享一个滚动的倒计时
    找一圈没找到想要的,自己写了一个<template><divclass="time"><divclass="time_icon"></div><divclass="time_boxday">{{time.day}}</div><divclass="time_splittime_......
  • 一个人的职业生涯之旅 —— 应届生求职、面试、Offer、跳槽(发展瓶颈、薪资倒挂、职业
    一、应届生求职问题1、求职平台1、Boss直聘2、前程无忧3、拉勾网4、应届生求职网站_最新更新校园招聘/实习机会/内推资讯_牛客网_牛客网_牛客网2、简历怎么写2.1、简历照片1、要与本人形象相符,不要看上去有较大差别,使用最近半年内的免冠照片,选择能够显示自己气质佳的照片,但......
  • MobTech ShareSDK|分享报错怎么办
    QQ-分享报错901111,9001010等由于QQ现在需要审核后才可以分享(之前分享不需要审核),所以此错误解决方法只需通过腾讯开放平台的审核即可,另外要检查注册好的应用的基本信息,包名、md5签名和Bundleid是不是填写正确,和项目里是一致的;Android端微信分享失败微信分享失败,提示toast:分享失败,或......
  • 小程序禁止二次转发分享
        业务场景,一些私密的小程序分享, 禁止二次转发https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/share/private-message.html https://developers.weixin.qq.com/miniprogram/dev/api/share/wx.updateShareMenu.html    ......