zoukankan      html  css  js  c++  java
  • 文件监控只FileSystemWatcher控件

    FileSYstemWatcher控件是用来监控一个文件系统或监控文件变化。该控件会通知文件创建、修改、删除的消息,分别通过Created事件、Changed事件和Deleted事件来处理对应的操作

    FIleSystemWatcher常用事件

    Created            当指定Path中创建文件和目录时发生

    Changed            当更改Path中的文件和目录时发生,变更目录或档案的大小

                                                             、系统属性、上次写入时间、上次存取时间或安全性权限时引

                                                              发。

    Deleted             删除指定path中的文件或目录时发生

    Renamed            重命名指定path中的文件或目录进时发生

    FIleSystemwatcher重用属性

    EnableRaisingEvents        获取或设置一个值,该值指示是否启用此组件

    Filer                获取或设置筛选字符串,用于确定在目录监视哪些文件

    InculdeSubdirectories        获取或设置一个值,该值指示是够监视指定路径中的子                 目录

    InternalBufferSize          获取或设置内部缓冲的大小

    NotifiyFilter               获取或设置要监视的更改类型

    Path                获取或设置要监视的目录的路径

    SynchronizingObject          获取或设置一个对象,该对象用于调用发送因目录更改                                                                  的事件处理程序

    NotifyFilter属性枚举值说明

    Attributes          文化或文件夹属性

    CreationTime         文件或文件夹创建时间

    DirectoryName        文件夹名称

    FileName                 文件名

    LastAccess          文件或文件夹上次打开的时间

    LastWrite                                     上一次向文件或文佳夹写入内容的时间

    Security                                        文件或文件夹的安全设置

    Size                                              文件或文件夹的大小

            //窗体加载
            private void Form1_Load(object sender, EventArgs e)
            {   
                //是否启用此组件
                fileSystemWatcher1.EnableRaisingEvents = false;
                //获取监控的路径
                fileSystemWatcher1.Path = @"C:UsersAdministratorDesktop新建文件夹";
                //确定监控哪些文件
                fileSystemWatcher1.Filter = "*.*";
                //是否监控目录下的子目录
                fileSystemWatcher1.IncludeSubdirectories = true;
                //设置监视操作的类型
                fileSystemWatcher1.NotifyFilter = NotifyFilters.Attributes | NotifyFilters.CreationTime | NotifyFilters.FileName | NotifyFilters.Size;
                richTextBox1.Text = "";
                button1.Text = "启动";
            }
            //点击按钮
            private void button1_Click(object sender, EventArgs e)
            {
                if (fileSystemWatcher1.EnableRaisingEvents)
                {
                    fileSystemWatcher1.EnableRaisingEvents = false;
                    button1.Text = "启动";
    
                }
                else
                {
                    fileSystemWatcher1.EnableRaisingEvents = true;
                    button1.Text = "停止";
                }
            }
            //FIlesystemWatcher事件
            private void fileSystemWatcher1_Changed(object sender, FileSystemEventArgs e)
            {
                                                //也是换行的意思=“ ”                               richTextBox1.AppendText(DateTime.Now.ToString()+"更改目录文件"+ Environment.NewLin); } private void fileSystemWatcher1_Created(object sender, FileSystemEventArgs e) { richTextBox1.AppendText(DateTime.Now.ToString() + "创建了文件目录文件" + Environment.NewLin); } private void fileSystemWatcher1_Deleted(object sender, FileSystemEventArgs e) { richTextBox1.AppendText(DateTime.Now.ToString() + "删除了目录文件" + Environment.NewLin); } private void fileSystemWatcher1_Renamed(object sender, RenamedEventArgs e) { richTextBox1.AppendText(DateTime.Now.ToString() + "重命名了目录文件" + Environment.NewLin); } }

      

  • 相关阅读:
    PCLVisualizer可视化类
    【Leetcode】课程表(拓扑排序)
    不是充许的静态以太网地址,它与vmware保留的mac地址冲突
    vmware虚拟机linux添加硬盘后先分区再格式化操作方法
    卸载mysql时,提示libmysqlclient.so.16()(64bit) is needed by (installed) postfix
    创建mysql数据库,在新数据库中创建表,再尝试删除表
    忘记linux下的mysql密码,需要重新创建密码123456
    创建mysql表
    程序员的冷笑话 python版本
    python的__mro__与__slot__
  • 原文地址:https://www.cnblogs.com/xiaowie/p/8883915.html
Copyright © 2011-2022 走看看