亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

FileSystemWatcher

系統(tǒng) 2496 0

可以使用FileSystemWatcher組件監(jiān)視文件系統(tǒng),并對(duì)文件系統(tǒng)的改變作出反應(yīng)。通過使用FileSystemWatcher組件,在特定的文件或目錄被創(chuàng)建、修改或刪除時(shí),可以快速和便捷地啟動(dòng)業(yè)務(wù)流程。

例如,如果一組用戶在合作處理一個(gè)存儲(chǔ)在服務(wù)器共享目錄下的文檔時(shí),可以使用FileSystemWatcher組件編寫應(yīng)用程序來監(jiān)視對(duì)共享目錄的更改情況。當(dāng)檢測(cè)到更改時(shí),該組件可以運(yùn)行處理過程,通過電子郵件通知每個(gè)用戶。

可以配置組件來監(jiān)視整個(gè)目錄及其內(nèi)容,或特定目錄下一個(gè)特定的文件或一組文件。若要監(jiān)視所有文件中的更改,應(yīng)將Filter屬性設(shè)置為空字符串("");若要監(jiān)視特定的文件,應(yīng)將Filter屬性設(shè)置為該文件的文件名(例如,若要監(jiān)視文件MyDoc.txt中的更改,將Filter屬性設(shè)置為"MyDoc.txt");也可以監(jiān)視特定文件類型中的更改,例如若要監(jiān)視文本文件中的更改,將Fillter屬性設(shè)置為"*.txt"。

【提示】不要忽略隱藏文件。

可監(jiān)視目錄或文件中的若干種更改。例如,可監(jiān)視文件或目錄的Attributes、LastWrite的日期和時(shí)間或Size的更改。通過將FileSystemWatcher.NotifyFilter屬性設(shè)置為NotifyFilters中的某個(gè)值,就可以實(shí)現(xiàn)這個(gè)目標(biāo)。

還可以監(jiān)視文件或目錄的重命名、刪除或創(chuàng)建。例如,若要監(jiān)視文本文件的重命名,可將Filter屬性設(shè)置為"*.txt",并調(diào)用一個(gè)WaitForChanged方法,并設(shè)置該方法中WatcherChangeTypes的值為Renamed。

下面舉例說明。創(chuàng)建一個(gè)FileSystemWatche組件來監(jiān)視運(yùn)行時(shí)指定的目錄。組件被設(shè)置用來監(jiān)視LastWrite和LastAccess時(shí)間的更改,以及目錄中文本文件的創(chuàng)建、刪除或重命名。如果文件被更改、創(chuàng)建或刪除,則文件的路徑就會(huì)被輸出到控制臺(tái)。當(dāng)一個(gè)文件被重命名時(shí),舊的和新的路徑都被輸出到控制臺(tái)。

【實(shí)例7-7】? 使用FileSystemWatche組件來監(jiān)視運(yùn)行時(shí)指定的目錄。

    
  1. using?System; ?
  2. using?System.IO; ?
  3. public ? class ?watcher ?
  4. { ?
  5. ???? public ? static ? void ?Main(string[]?args) ?
  6. ????{ ?
  7. ???????? //如果沒有指定目錄,則退出程序 ?
  8. ???????? if (args.Length!= 1 ) ?
  9. ????????{ ?
  10. ???????????? //顯示調(diào)用程序的正確方法 ?
  11. ????????????Console.WriteLine( "usage:Watcher.exe(directory)" ); ?
  12. ???????????? return ; ?
  13. ????????} ?
  14. ???????? //創(chuàng)建一個(gè)新的FileSystemWatcher并設(shè)置其屬性 ?
  15. ????????FileSystemWatcher?watcher= new ?FileSystemWatcher(); ?
  16. ????????watcher.Path=args[O]; ?
  17. ???????? /*監(jiān)視LastAcceSS和LastWrite時(shí)間的更改以及文件或目錄的重命名*/ ?
  18. ????????watcher.NotifyFilter=NotifyFilters.LastAccess?|?NotifyFilters.LastWrite?| ?
  19. ????????????NotifyFilters.FileName?|?NotifyFilters.DirectoryName; ?
  20. ???????? //只監(jiān)視文本文件 ?
  21. ????????watcher.Filter= "*.txt" ; ?
  22. ???????? //添加事件句柄 ?
  23. ???????? //當(dāng)由FileSystemWatcher所指定的路徑中的文件或目錄的 ?
  24. ???????? //大小、系統(tǒng)屬性、最后寫時(shí)間、最后訪問時(shí)間或安全權(quán)限 ?
  25. ???????? //發(fā)生更改時(shí),更改事件就會(huì)發(fā)生 ?
  26. ????????watcher.Changed?+= new ?FileSystemEventHandler(OnChanged); ?
  27. ???????? //由FileSystemWatcher所指定的路徑中文件或目錄被創(chuàng)建時(shí),創(chuàng)建事件就會(huì)發(fā)生 ?
  28. ????????watcher.Created?+= new ?FileSystemEventHandler(OnChanged); ?
  29. ???????? //當(dāng)由FileSystemWatcher所指定的路徑中文件或目錄被刪除時(shí),刪除事件就會(huì)發(fā)生 ?
  30. ????????watcher.Deleted?+= new ?FileSystemEventHandler(OnChanged)?; ?
  31. ???????? //當(dāng)由FileSystemWatcher所指定的路徑中文件或目錄被重命名時(shí),重命名事件就會(huì)發(fā)生 ?
  32. ????????watcher.Renamed?+= new ?RenamedEventHandler(OnRenamed); ?
  33. ???????? //開始監(jiān)視 ?
  34. ????????watcher.EnableRaisingEvents= true ; ?
  35. ???????? //等待用戶退出程序 ?
  36. ????????Console.WriteLine( "Press\'q\'?to?quit?the?sample." ); ?
  37. ???????? while (Console.Read()!= 'q' ); ?
  38. ????} ?
  39. ???? //定義事件處理程序 ?
  40. ???? public ? static ? void ?OnChanged(object?sender,FileSystemEventArgs?e) ?
  41. ????{ ?
  42. ???? //指定當(dāng)文件被更改、創(chuàng)建或刪除時(shí)要做的事 ?
  43. ????????Console.WriteLine( "file:" +e.FullPath+ "" +e.ChangeType); ?
  44. ????} ?
  45. ???? public ? static ? void ?OnRenamed(object?sender,RenamedEventArgs?e) ?
  46. ????{ ?
  47. ???? //指定當(dāng)文件被重命名時(shí)發(fā)生的動(dòng)作 ?
  48. ????????Console.WriteLine( "Fi]e:{0}?renamed?to{1}" ,e.OldFullPath,e.FullPath); ?
  49. ????} ?
  50. }?

FileSystemWatcher


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 亚洲精品亚洲九十七页 | 久久99精品久久久久久久野外 | 毛片免费观看视频 | a级黄片毛片 | 国产亚洲精品日韩综合网 | 九九久久免费视频 | 毛片在线看网站 | 久久精品国产午夜伦班片 | 久久精品播放 | 午夜伊人 | 最新国产区 | 久久免| 婷婷久月| 成人黄色免费 | 日本中文字幕一区二区高清在线 | 国产精品视频久久久久 | 手机在线看片不卡中文字幕 | 亚洲欧美精品一区二区 | 伊人久久综合 | 久久成人18免费网站 | 亚洲欧美bt | 成年女人免费看 | 欧美一级看片a免费观看 | 亚洲国产成人精品激情 | 神马影院我不卡888 神马影院我不卡手机 | 久久国产国内精品对话对白 | 99热成人精品国产免男男 | 538在线视频二三区视视频 | 激情亚洲 | 亚洲国产精久久小蝌蚪 | 久综合网 | 亚洲精品久久久久久婷婷 | 国产在线激情视频 | 四虎精品成人免费永久 | 精品免费久久久久久影院 | 啪啪综合网 | 成人欧美一区二区三区视频不卡 | 成人高清毛片a | 青青青国产免费手机视频在线观看 | 国产精品社区 | 精品伊人 |