我是靠谱客的博主 典雅大雁,最近开发中收集的这篇文章主要介绍【C#】自动文件采集器并进行持久化,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

先上图,看下运行效果:

本采集软件目前已完成,支持的功能有:实时展示计算机系统资源信息和实现进程的关闭、自动完成目录的监控并对监控目录支持过滤功能。支持动态加载库功能,可以兼容不同的需求,如解析或者将监控的数据持久化到文件、数据库、发送消息提醒等操作。

实现的步骤:

1、添加界面控件,并完成列表框设置,将列表框DrawMode属性设置为:OwnerDrawFixed

2、对列表框DrawItem方法进行重写。使输出内容可以显示不同的颜色

3、添加一个fileSystemWatcher控件,代码参考如下:

  private void fileSystemWatcher_Created(object sender, System.IO.FileSystemEventArgs e)
        {
            if (WatchDirExculde(e.FullPath))
                return;
            AddLog(LogType.Created, e.FullPath);
        }

        private void fileSystemWatcher_Changed(object sender, System.IO.FileSystemEventArgs e)
        {
            if (WatchDirExculde(e.FullPath))
                return;
            AddLog(LogType.Changed, e.FullPath);
            //开始处理文件
            {
                //Thread.Sleep(500);
                try
                    {
                        TorqueGunInfo tg = new TorqueGunInfo();
                        tg.execute(e.FullPath);
                    }
                    catch (Exception ex)
                    {
                        CLogHelper.Logger.Singleton.Error(ex.Message);
                        AddLog(LogType.Exception, "处理文件失败:" + ex.Message + e.FullPath);
                    }
            }
        }

        private void fileSystemWatcher_Deleted(object sender, System.IO.FileSystemEventArgs e)
        {
            if (WatchDirExculde(e.FullPath))
                return;
            AddLog(LogType.Deleted, e.FullPath);
        }

        private void fileSystemWatcher_Renamed(object sender, System.IO.RenamedEventArgs e)
        {
            if (WatchDirExculde(e.FullPath))
                return;
            AddLog(LogType.Renamed, e.FullPath);
        }

4 添加开始监控按钮事件,按钮事件代码如下:

   if (this.btStop.Text == "开始监控")
   {
        CLogHelper.Logger.Singleton.InfoFormat("开始监控目录为:{0}", path);
        this.btStop.Text = "停止监控";
        this.btStop.BackColor = Color.Red;
        fileSystemWatcher.Path = path;
        fileSystemWatcher.EnableRaisingEvents = true;
   }

5 业务处理代码。这个根据具体业务而定

6 应用场景:

6.1    目录监控和数据处理

6.2    网站、服务器文件变动监控与提醒

6.3   文件及数据持久化

最后

以上就是典雅大雁为你收集整理的【C#】自动文件采集器并进行持久化的全部内容,希望文章能够帮你解决【C#】自动文件采集器并进行持久化所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(50)

评论列表共有 0 条评论

立即
投稿
返回
顶部