zoukankan      html  css  js  c++  java
  • C# 使用FileSystemWatcher来监视文件系统的变化

     

     

    对于一个文件夹的改变,C#这边有自己的类来实现,我们不需要关心它的内部实现机制,不需要关心它底层调用哪些API,我们只需要关心如何去调用它,如何让它帮助我们记录文件夹的修改情况即可。

    复制代码
       #region 监视文件夹的变化
                FileSystemWatcher watcher = new FileSystemWatcher();
                watcher.Path = "f:\";
                watcher.NotifyFilter =//被监控的方面
                   NotifyFilters.LastWrite |
                   NotifyFilters.FileName |
                   NotifyFilters.DirectoryName;
    
                // 订阅一些事件,当它被触发时(.net(windows)底层触发它,我们不用管),执行我们的方法
                watcher.Changed += (object source, FileSystemEventArgs e) =>
                {
                    Console.WriteLine("文件{0}已经被修改,修改类型{1}", e.FullPath, e.ChangeType.ToString());
                };
                watcher.Created += (object source, FileSystemEventArgs e) =>
                {
                    Console.WriteLine("文件{0}被建立", e.FullPath);
                };
                watcher.Deleted += (object source, FileSystemEventArgs e) =>
                {
                    Console.WriteLine("文件{0}已经被删除", e.FullPath);
                };
                watcher.Renamed += (object source, RenamedEventArgs e) =>
                {
                    Console.WriteLine("文件{0}的名称已经从{1}变成了{2}", e.OldFullPath, e.OldName, e.Name);
                };
    
                // 为true表示开启FileSystemWatcher组件,反之我们的监控将不启作用
                watcher.EnableRaisingEvents = true;
                #endregion
    复制代码
  • 相关阅读:
    vuecli3.0 优雅使用svg
    解决vueRouter 跳转相同路由报错
    vue项目中使用 web worker 开启多线程
    项目经常使用的common.js 方法
    vue实现3D词云
    怎么禁止用户点击f12查看数据,查看网页代码,布局样式
    1:vue项目优化总结
    手写一个发布订阅
    vue3.0 reactive 理解
    ifram父子组件传参
  • 原文地址:https://www.cnblogs.com/lvdongjie/p/5509157.html
Copyright © 2011-2022 走看看