filesystemwatch java_FileSystemWatch 对文件的监测 修改 创建 删除 并写入日志 – RunningMan1229 – 博客园...
我做的这个主要是用来对文件的监测 修改 创建 删除 并写入日志
此外我做的WinForm程序
首先导入命名空间
1 using System.IO;
申明全局变量
1 private FileSystemWatcher watch = new FileSystemWatcher();
2 private FileStream fs = null;
先写一个写日志的方法,我这里写的路径都是固定的,你们可以给这个路径配置在App.config中,用户可以选择路径,选择完以后
修改config文件,下次用的时候可以默认选择上次的路径,这里我就不做了
1 public void write(string message)
2 {
3 string path = “C:\\Log\\”;
4 if (!Directory.Exists(path))
5 {
6 Directory.CreateDirectory(path);
7 }
8 string fileName = path + “Log.txt”;
9
10 if (!File.Exists(fileName))
11 {
12 FileStream file = new FileStream(fileName, FileMode.Create);
13 file.Dispose();
14 }
15 fs = new FileStream(fileName, FileMode.Append, FileAccess.Write);
16 StreamWriter sw = new StreamWriter(fs, Encoding.UTF8);
17 sw.WriteLine(message);
18 sw.WriteLine(“———————–“);
19 sw.Dispose();
20 fs.Dispose();
21 }
写监测的方法,我这里只是记录了一部分信息
1 public void ReNameWatch(object sender, FileSystemEventArgs e)
2 {
3 write(DateTime.Now.ToString(“yyyy-MM-dd hh:mm:ss”) + ” ReName File : ” + e.Name.ToString());
4 }
5
6 public void DeleteWatch(object sender, FileSystemEventArgs e)
7 {
8 write(DateTime.Now.ToString(“yyyy-MM-dd hh:mm:ss”) + ” Delete File : ” + e.Name.ToString());
9 }
10
11 public void CreateWatch(object sender, FileSystemEventArgs e)
12 {
13 write(DateTime.Now.ToString(“yyyy-MM-dd hh:mm:ss”) + ” Create File : ” + e.Name.ToString());
14 }
15
16 public void ChangeWatch(object sender, FileSystemEventArgs e)
17 {
18 write(DateTime.Now.ToString(“yyyy-MM-dd hh:mm:ss”) + ” Change File : ” + e.Name.ToString());
19 }
写按钮点击事件
1 public void Watch(object sender, EventArgs e)
2 {
3 if (this.button1.Text == “Start”)
4 {
5 string path = “C:\\”;
6 watch.Path = path;
7 watch.Filter = “*.txt”;
8 watch.NotifyFilter = NotifyFilters.FileName | NotifyFilters.Size | NotifyFilters.LastWrite | NotifyFilters.Attributes | NotifyFilters.CreationTime | NotifyFilters.DirectoryName | NotifyFilters.LastAccess | NotifyFilters.Security;
9
10 watch.Renamed += new RenamedEventHandler(ReNameWatch);
11 watch.Deleted += new FileSystemEventHandler(DeleteWatch);
12 watch.Created += new FileSystemEventHandler(CreateWatch);
13 watch.Changed += new FileSystemEventHandler(ChangeWatch);
14
15 watch.EnableRaisingEvents = true;
16 this.button1.Text = “Stop”;
17 }
18 else if (this.button1.Text == “Stop”)
19 {
20 watch.EnableRaisingEvents = false;
21 this.button1.Text = “Start”;
22 }
23 }
写加载事件
1 public Two()
2 {
3 InitializeComponent();
4 this.KeyDown += new KeyEventHandler(Two_KeyDown);
5 this.button1.Click += new EventHandler(Watch);
6 }
生成日志文件Log.txt截图
filesystemwatch java_FileSystemWatch 对文件的监测 修改 创建 删除 并写入日志 – RunningMan1229 – 博客园...相关推荐
- 如何通过使用注册项 (.reg) 文件添加、修改或删除注册表子项和值
警告:注册表编辑器使用不当可导致严重问题,可能需要重新安装操作系统.Microsoft 不能保证您可以解决因注册表编辑器使用不当而导致的问题.使用注册表编辑器需要您自担风险. 本文分步介绍了如何使用注 ...
- markdown mysql高亮_修改博客园markdown编辑器代码高亮风格的方法
作为一个工程师,追求极致与艺术也应当成为我们生活中的一部分,作为自己的心爱之物--博客,当然也得装扮一下,我对代码高亮有自己所喜欢的风格~还好程序员的世界总是共通的,已经有前辈开发了一些代码高亮的样式 ...
- css文件插入背景音乐,博客园添加背景音乐,背景效果!
博客园添加背景音乐,背景效果 申请博客园js权限 申请话术 实例 尊敬的博客园管理员: 请求申请开通js权限,希望能够把自己的博客修饰的漂亮点,点缀自定义js插件效果,希望管理员可以批准,谢谢! 开通 ...
- 10000个怎么用js写 创建li_给博客园加一个会动的小人-spig.js
给博客园加一个会动的小人-spig.js 效果大概是这样,感觉十分可爱qvq 那么怎么添加呢? 首先需要开通js/html权限. 然后在页脚html代码中加入以下代码 -- var isindex=t ...
- [开源] 分享导出博客园文章成本地 Markdown 文件存储的工具
此文主要分享了如何将自己博客园的文章自动导出到 Markdown 文档进行存储,以便在本地进行归档管理,程序中也对文章的分类.tag.代码块以及文章中的图片进行了保存处理,以便上传到自己的图. 整理后 ...
- 博客园修改页面显示样式css
博客园修改页面显示样式css 一.总结 二. 博客园修改页面显示样式css 1.点管理 2.点设置 3.在页面定制css代码中加入你想要改变样式的css代码即可 不会写css的下面有代码示例,直接复制 ...
- 博客园修改页面显示样式
博客园修改页面显示样式 一.总结 HTML源码吧(FireBug或审查元素) 火狐浏览器下通过FireBug插件来查看源码 二.打造自己的博客园页面 刚接触博客园时,总有一种要定制打造自己博客页面的冲 ...
- 把 .md 文件上传到博客园
接上篇, 把csdn博客打包成md文件的办法,便于迁移到其他博客平台或者自己的博客上,一分钟搞定 在得到了所有的博客(.md文件形式的)后 怎么发布到到博客园呢 步骤 有 python3 环境,安装必 ...
- 博客园主页样式修改(加透明背景和微调位置)
背景透明方法 主要就是以下两个好用点.但是有区别.前者不继承透明,后者继承透明. background:rgba(255,255,255,0.5); optcity:0.5 参阅资料:https:// ...
最新文章
- 使用Docker中国官方镜像的加速地址
- 十款让 Web 前端开发人员更轻松的实用工具
- Comware、VRP、IOS这些操作系统平台你分清了吗?
- 周期获取Linux系统内存
- PyTorch-常用代码
- Golang实践录:命令行cobra库实例再三优化
- 通向KDE4之路(十一):Amarok2开辟起步
- Python脚本访问子目录
- JVM到底怎么进行类加载器的呢?
- 10分钟教你写个商业计划书
- Redis的集群原理
- gbk utf-8 asccl url
- c语言错误c1083是什么意思,fatal error C1083: Cannot open include file: 'stdafx.h': No such file or directo...
- JavaScript中的倒叙和排序
- C语言-实现对单循环链表中奇数和偶数结点的移动(前面奇数结点后面偶数结点)
- FTDI for linux的安装指南
- SSL/TLS高强度加密
- Ae:摄像机设置与摄像机选项
- DT内核圆柱模板行业站点主动tags三项主动推送插件
- 独家送书福利(6本)【隐秘而伟大】这群神秘的程序员,干了票大的
热门文章
- OSChina 周五乱弹 ——我想对喷子说,别停下你探索的脚步!
- [转]如何用Delphi开发网游外挂
- 数据最高管理部门——国家数据局成立!
- onlineSchool 项目课 四 :对项目图片的处理
- Mybatis批量插入数据的两种方式
- java页面强制刷新,JS关于刷新页面的相关总结
- 【Pandas总结】第九节 Pandas_累计与分组 pd.groupby()
- php 去除字符串中符号,如何从PHP字符串中的字符中删除重音符号?
- HTTP协议---详细讲解
- java将多张图片添加水印并生成压缩包导出