1. 程式人生 > >Java 讀取資料夾檢查是否新增檔案 檔案監聽器

Java 讀取資料夾檢查是否新增檔案 檔案監聽器

建立一個檔案監聽器 監聽資料夾下檔案的變化 

使用 commons-io 中的檔案監控 

import java.util.concurrent.TimeUnit;  
import org.apache.commons.io.filefilter.FileFilterUtils;  
import org.apache.commons.io.monitor.FileAlterationMonitor;  
import org.apache.commons.io.monitor.FileAlterationObserver;  
/**
 *
 * @author Administrator
 */
public class fileTest {
    public static void main(String[] args) throws Exception {  
        // 監控目錄  
        String rootDir = "d:\\tvdb";  
        // 輪詢間隔 5 秒  
        long interval = TimeUnit.SECONDS.toMillis(40);  
        //   
        FileAlterationObserver observer = new FileAlterationObserver(  
                                              rootDir,   
                                              FileFilterUtils.and(  
                                               FileFilterUtils.fileFileFilter(),  
                                               FileFilterUtils.suffixFileFilter(".mp4")),   
                                              null);  
        observer.addListener(new MyFileListener());  
        FileAlterationMonitor monitor = new FileAlterationMonitor(interval,observer);  
        // 開始監控  
        monitor.start();  
        
    }  
}

檔案監聽器java程式碼 :

import java.io.File;  
import org.apache.commons.io.monitor.FileAlterationListenerAdaptor;  
  
/** 
 * 自定義檔案監聽器 
 * @author   
 * @date    2010-11-16 
 * @file    org.demo.file.MyFileListener.java 
 */  
public class MyFileListener extends FileAlterationListenerAdaptor{  
    @Override  
    public void onFileCreate(File file) {  
        System.out.println("[新建]:" + file.getAbsolutePath());  
    }  
    @Override  
    public void onFileChange(File file) {  
        System.out.println("[修改]:" + file.getAbsolutePath());  
    }  
    @Override  
    public void onFileDelete(File file) {  
        System.out.println("[刪除]:" + file.getAbsolutePath());  
    }  
}  

需要commons-io  jar包

可在 https://mvnrepository.com/  網站中搜索  

百度網盤:

連結:https://pan.baidu.com/s/1WrU8eB88hbFwLELOsVDdFg 
提取碼:ujsr 
 

轉載原文地址:https://www.iteye.com/problems/67881