狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

C#使用FileSystemWatcher控件實(shí)現(xiàn)的文件監(jiān)控功能示例

admin
2023年12月26日 23:30 本文熱度 711

本文實(shí)例講述了C#使用FileSystemWatcher控件實(shí)現(xiàn)的文件監(jiān)控功能。分享給大家供大家參考,具體如下:

FileSystemWatcher

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

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

可以配置組件來(lái)監(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的更改。通過(guò)將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。

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

實(shí)例 

使用FileSystemWatche組件來(lái)監(jiān)視運(yùn)行時(shí)指定的目錄:

using System;

using System.IO;

public class watcher

{

  public static void Main(string[] args)

  {

    //如果沒(méi)有指定目錄,則退出程序

    if(args.Length!=1)

    {

      //顯示調(diào)用程序的正確方法

      Console.WriteLine("usage:Watcher.exe(directory)");

      return;

    }

    //創(chuàng)建一個(gè)新的FileSystemWatcher并設(shè)置其屬性

    FileSystemWatcher watcher=new FileSystemWatcher();

    watcher.Path=args[O];

    /*監(jiān)視LastAcceSS和LastWrite時(shí)間的更改以及文件或目錄的重命名*/

    watcher.NotifyFilter=NotifyFilters.LastAccess | NotifyFilters.LastWrite |

           NotifyFilters.FileName | NotifyFilters.DirectoryName;

    //只監(jiān)視文本文件

    watcher.Filter="*.txt";

    //添加事件句柄

    //當(dāng)由FileSystemWatcher所指定的路徑中的文件或目錄的

    //大小、系統(tǒng)屬性、最后寫時(shí)間、最后訪問(wèn)時(shí)間或安全權(quán)限

    //發(fā)生更改時(shí),更改事件就會(huì)發(fā)生

    watcher.Changed +=new FileSystemEventHandler(OnChanged);

    //由FileSystemWatcher所指定的路徑中文件或目錄被創(chuàng)建時(shí),創(chuàng)建事件就會(huì)發(fā)生

    watcher.Created +=new FileSystemEventHandler(OnChanged);

    //當(dāng)由FileSystemWatcher所指定的路徑中文件或目錄被刪除時(shí),刪除事件就會(huì)發(fā)生

    watcher.Deleted +=new FileSystemEventHandler(OnChanged) ;

    //當(dāng)由FileSystemWatcher所指定的路徑中文件或目錄被重命名時(shí),重命名事件就會(huì)發(fā)生

    watcher.Renamed +=new RenamedEventHandler(OnRenamed);

    //開(kāi)始監(jiān)視

    watcher.EnableRaisingEvents=true;

    //等待用戶退出程序

    Console.WriteLine("Press\'q\' to quit the sample.");

    while(Console.Read()!='q');

  }

  //定義事件處理程序

  public static void OnChanged(object sender,FileSystemEventArgs e)

  {

    //指定當(dāng)文件被更改、創(chuàng)建或刪除時(shí)要做的事

    Console.WriteLine("file:"+e.FullPath+""+e.ChangeType);

  }

  public static void OnRenamed(object sender,RenamedEventArgs e)

  {

    //指定當(dāng)文件被重命名時(shí)發(fā)生的動(dòng)作

    Console.WriteLine("Fi]e:{0} renamed to{1}",e.OldFullPath,e.FullPath);

  }

}


該文章在 2023/12/26 23:32:15 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved