c#使用filesystemwatcher监视文件系统的变化

时间:2022-08-06 15:28:43 


#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

另外,告诉大家一个 xor异或运算的使用技巧,就是它可以在不引入第三个变量的情况下,交替两个变量的值,你的变量可以是数值,也可以是字符,如果是字符,我们需要使用它的hashcode值进行xor运算。


#region xor两个变量交换
            int a = 2;
            int b = 3;
            Console.WriteLine("a={0}", a);
            Console.WriteLine("b={0}", b);
            a = a ^ b ^ (b = a);
            Console.WriteLine("a={0}", a);
            Console.WriteLine("b={0}", b);
            #endregion

标签:filesystemwatcher,文件系统
0
投稿

猜你喜欢

  • Springboot-dubbo-fescar 阿里分布式事务的实现方法

    2022-05-05 05:43:16
  • Spring @ComponentScan注解扫描组件原理

    2021-09-21 09:10:02
  • 如何解决springboot读取配置文件的中文乱码问题

    2022-09-13 22:26:42
  • 执行java请求时导致在脚本执行结束时JVM无法退出

    2023-11-25 05:57:13
  • Android键盘显示与隐藏代码

    2021-06-29 22:15:58
  • 例题详解Java dfs与记忆化搜索和分治递归算法的使用

    2022-03-15 08:29:55
  • 详解Java的MyBatis框架和Spring框架的整合运用

    2022-09-19 19:22:20
  • java实现点击按钮弹出新窗体功能

    2022-02-18 14:39:55
  • Android 吸入动画效果实现分解

    2021-10-24 16:55:28
  • 简单了解Spring beanfactory循环依赖命名重复属性

    2023-10-27 19:39:14
  • Android仿XListView支持下拉刷新和上划加载更多的自定义RecyclerView

    2023-04-26 12:46:02
  • java8 stream多字段排序的实现

    2021-07-30 17:47:47
  • 浅谈自定义校验注解ConstraintValidator

    2023-07-06 03:10:53
  • Java实现一个顺序表的完整代码

    2023-09-21 01:00:59
  • 解决MySQL忘记密码问题的方法

    2022-04-05 07:55:43
  • Unity2D实现游戏回旋镖

    2022-07-16 07:13:50
  • SpringBoot实现WebSocket即时通讯的示例代码

    2022-06-14 19:59:36
  • hadoop是什么语言

    2021-06-18 07:02:38
  • C#实现自定义Dictionary类实例

    2022-12-19 09:23:47
  • Java数据封装树形结构代码实例

    2022-04-12 08:11:44
  • asp之家 软件编程 m.aspxhome.com