FileSystemWatcher 解决多次出发OnChanged事件
来源:互联网 发布:知乎如何成为财务经理 编辑:程序博客网 时间:2024/05/20 23:59
前一段时间一直在研究FileSystemWatcher类的使用,期间也遇到过很多问题,例如:触发多次OnChanged事件,对office文件打开之后产生临时文件的处理,研究了好长时间终于解决了,现在详细说一下如何解决多次触发OnChanged事件的方法。
首先说一下为什么会多次触发OnChanged事件:因为一个文件你修改个它的某一个属性,其他的相关属性也会发生改变,所以,会多次触发OnChanged事件,(自己理解的,可能会描述不准确,请提出修改)。
解决方法。
我用了两个集合,一个FileWatcherTime集合,存储文件的修改时间(新建、修改或删除),一个FileWatcherType集合,存储文件的修改类型。FileWatcherTime其key 值存储的是文件的路径,其value存储的是文件的最后修改时间, FileWatcherType中,其key 值存储的是文件的路径,其value存储的是文件的修改类型,0:删除,1:新建或修改。我只用了这三种变化类型,并且在一段时间内文件新建或修改只要第一次触发了一个事件,以后再有修改和新建就不会再执行操作。,定义个这两个变量之后,再在OnChanged事件根据变化类型执行相关的操作,刚开始我在OnChanged事件中执行所有的变化操作,出现了问题,后来我就分开,单独执行操作。新建就触发OnCreated事件,修改就触发OnChanged事件,删除就触发OnDeleted事件。这样就不会出问题。大家可以根据自己的需求对两个集合变量进行分类判断就可以解决多次触发事件的问题。
对对office文件打开之后产生临时文件的处理,我在事件中进行了判断,只要是隐藏的文件, 就不给与处理。大体这个样子。我的写作水平一般,望大家见谅,如果有问题可以留言
- FileSystemWatcher 解决多次出发OnChanged事件
- 解决FileSystemWatcher事件多次触发的方法
- FileSystemWatcher事件多次触发解决办法
- FileSystemWatcher事件多次触发的解决方法
- FileSystemWatcher事件多次触发的解决方法
- FileSystemWatcher事件多次触发的解决方法
- FileSystemWatcher触发多次Change事件的解决办法
- FileSystemWatcher事件多次触发的解决方法
- FileSystemWatcher触发多次Change事件的解决办法
- FileSystemWatcher事件多次触发的解决方法 (C++版)
- onchanged事件引起的问题
- 解决jquery的多次绑定事件
- jQuery的ajax事件多次请求解决
- FileSystemWatcher的Created事件问题
- FileSystemWatcher 远程监测文件夹事件
- enter 出发按钮事件
- mouseover和mouseout多次出发解决方案。
- 如何解决WebBrowser.DocumentCompleted事件的多次调用
- 孙鑫VC学习(第9课--修改应用程序外观(工具栏、状态栏))
- 用GDB调试程序
- Canvas drawText 不显示
- switch-case 非常规用法拾零
- IIC总线
- FileSystemWatcher 解决多次出发OnChanged事件
- android HTTP 通信, XML 解析
- 修改eclipse使用的jdk
- 耶,可以去看加勒比海盗3D电影啦
- Struts2Validator
- 架构摘记
- 模式窗体调用用父窗体中的方法
- 窗口客户区和视图客户区
- android c++ ndk 的编译环境搭建