java 文件监听器_java7 文件监听器
java7中的文件監聽,主要可以監聽指定目錄下的文件:新建 刪除 修改等操作。StandardWatchEventKinds.ENTRY_MODIFY,StandardWatchEventKinds.ENTRY_CREATE,StandardWatchEventKinds.ENTRY_DELETE 這三個事件 被注冊到watchService 對象中,之后就可以監聽指定目錄下的文件。如下代碼所示:
package com.java7filespaths; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.nio.channels.FileChannel; import java.nio.channels.FileLock; import java.nio.file.FileSystems; import java.nio.file.Paths; import java.nio.file.StandardWatchEventKinds; import java.nio.file.WatchEvent; import java.nio.file.WatchKey; import java.nio.file.WatchService; public class TestFilesPaths { ?? ?public static void main(String[] args) { ?? ?//獲取文件系統的WatchService 對象 ??????? try { ??????????? WatchService watchService = FileSystems.getDefault().newWatchService(); ??????????? //為指定目錄路徑注冊艦艇 ??????????? Paths.get("E:\\").register(watchService, StandardWatchEventKinds.ENTRY_MODIFY,StandardWatchEventKinds.ENTRY_CREATE,StandardWatchEventKinds.ENTRY_DELETE); ??????????? while(true){ ??????????????? //獲取下一個文件變化事件 ??????????????? try { ??????????????????? WatchKey key = watchService.take(); ??????????????????? for (WatchEvent> enent : key.pollEvents()) { ??????????????????????? System.out.println(enent.context()+"文件發生了"+enent.kind()+"事件"); ??????????????????? } ??????????????????? if(!key.reset()){ ?????????????????? ??? ?break; ??????????????????? } ?????????????????? ? ??????????????? } catch (InterruptedException e) { ??????????????????? e.printStackTrace(); ??????????????? } ?????????????? ? ??????????? } ?????????? ? ??????? } catch (IOException e) { ??????????? e.printStackTrace(); ??????? } ?????? ? ?? ?? ??? ?/*//測試Files 工具類copy 方法 ??????? try { ?? ??? ??? ?Files.copy(Paths.get("E://aa.txt"), new FileOutputStream(new File("E://bb.txt"))); ?? ??? ??? ?System.out.println("拷貝方法 拷貝完了。。。"); ?? ??? ?} catch (IOException e) { ?? ??? ??? ?e.printStackTrace(); ?? ??? ?}*/ ?? ??? ? ?? ?} }
總結
以上是生活随笔為你收集整理的java 文件监听器_java7 文件监听器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小米智能音箱2的使用体验小米智能音箱2的
- 下一篇: 在oracle中游标的操作,Oracle