自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C# FileSystemWatcher對(duì)象的實(shí)例

開發(fā) 后端
這里介紹下列代碼列出了C# FileSystemWatcher對(duì)象的一個(gè)簡(jiǎn)單應(yīng)用實(shí)例。在這個(gè)例子中,我們監(jiān)控“C:Temp”目錄中是否建立了*.TXT文件。這可能是FileSystemWatcher的最簡(jiǎn)單用法。

當(dāng)FileSystemWatcher調(diào)用一個(gè)事件處理器時(shí),它包含兩個(gè)自變量——一個(gè)叫做“sender”的對(duì)象和一個(gè)叫做“e”的FileSystemEventArgs對(duì)象。我們感興趣的自變量為FileSystemEventArgs自變量。這個(gè)對(duì)象中包含有提交事件的原因。以下是FileSystemEventArgs對(duì)象的一些屬性:

屬性:

1.Name——這個(gè)屬性中使事件被提交的文件的名稱。其中并不包含文件的路徑——只包含使用事件被提交的文件或目錄名稱。
2.ChangeType——這是一個(gè)WatcherChangeTypes,它指出要提交哪個(gè)類型的事件。其有效值包括:
◆Changed
◆Created
◆Deleted
◆Renamed
3.FullPath——這個(gè)屬性中包含使事件被提交的文件的完整路徑,包括文件名和目錄名。

代碼實(shí)例

下列代碼列出了C# FileSystemWatcher對(duì)象的一個(gè)簡(jiǎn)單應(yīng)用實(shí)例。在這個(gè)例子中,我們監(jiān)控“C:Temp”目錄中是否建立了*.TXT文件。這可能是FileSystemWatcher的最簡(jiǎn)單用法。

  1. publicvoid CreateWatcher(){  
  2. //Create a new FileSystemWatcher.  
  3. FileSystemWatcher watcher = newFileSystemWatcher();  
  4. //Set the filter to only catch TXT files.  
  5. watcher.Filter = "*.txt";  
  6. //Subscribe to the Created event.  
  7. watcher.Created += new  
  8. FileSystemEventHandler(watcher_FileCreated);  
  9. //Set the path to C:Temp  
  10. watcher.Path = @"C:Temp";  
  11. //Enable the FileSystemWatcher events.  
  12. watcher.EnableRaisingEvents = true;  
  13. }  
  14. void watcher_FileCreated(object sender, FileSystemEventArgs e){  
  15. //A new .TXT file has been created in C:Temp  
  16. Console.WriteLine("A new *.txt file has been created!");  

應(yīng)用

最初,F(xiàn)ileSystemWatcher的用途可能并不明顯。當(dāng)然,如果一個(gè)文件或目錄發(fā)生改變,它會(huì)向我們發(fā)出警報(bào),但在哪些情況下我們需要這類信息呢?

如果一個(gè)系統(tǒng)允許客戶端上傳文件進(jìn)行處理,這時(shí)可能就要用到C# FileSystemWatcher對(duì)象。盡管很明顯我們已經(jīng)進(jìn)入Web服務(wù)和SOA時(shí)代,但許多系統(tǒng)仍然要將平面文件插入到某些位置,不管是FTP服務(wù)器或網(wǎng)絡(luò)共享文件夾中。我已經(jīng)將C# FileSystemWatcher對(duì)象應(yīng)用到這種類型的系統(tǒng)中,雖然并不是完全沒有出錯(cuò),但它在“調(diào)查”目錄變化方面確實(shí)有一定的優(yōu)勢(shì)。

如果你想讓兩個(gè)文件保持同步,這時(shí)也可以用到C# FileSystemWatcher對(duì)象。你可以用FileSystemWatcher同時(shí)監(jiān)控這兩個(gè)文件的位置,如果其中一個(gè)出現(xiàn)更新,就提交一個(gè)Changed事件;然后你就可以將這些改變復(fù)制到其它系統(tǒng)/文件中。

如果你的系統(tǒng)有任何功能需要進(jìn)行文件或目錄監(jiān)控,你必須仔細(xì)了解那個(gè)組件,看是否可以使用C# FileSystemWatcher對(duì)象。在我的應(yīng)用過程中,這個(gè)對(duì)象至少為送交給系統(tǒng)的每個(gè)文件節(jié)省了10秒鐘的時(shí)間。

【編輯推薦】

  1. C#跳躍語句學(xué)習(xí)經(jīng)驗(yàn)
  2. 簡(jiǎn)單描述C#哈希值
  3. 如何用C#和ADO.NET訪問
  4. C#建立Web Service
  5. 淺析C# 匿名方法
責(zé)任編輯:佚名 來源: 博客園
相關(guān)推薦

2009-08-20 17:13:37

C# FileSyst

2021-03-15 08:18:23

C#反射模塊

2009-09-01 18:29:10

C#繼承C#多態(tài)

2009-08-28 16:50:25

C# PromptPo

2009-08-28 16:37:32

C# for循環(huán)

2009-08-27 13:30:11

C# interfac

2009-08-24 16:08:45

C# DrawStri

2009-08-26 14:31:08

C#打印文件

2009-08-31 17:16:12

C#實(shí)現(xiàn)接口

2009-08-27 17:40:21

C#接口的作用

2009-09-02 19:12:37

C#遞歸

2009-08-31 17:30:10

C#接口的作用

2009-08-25 16:03:51

C# SQLDMO對(duì)象

2009-08-31 09:44:23

C# Employee

2009-08-26 10:34:59

C# Hashtabl

2009-09-02 15:41:21

C# HTTPWebR

2009-08-25 10:08:39

C# MyData對(duì)象

2009-08-12 11:24:25

C# String對(duì)象

2009-08-19 17:12:18

C# Connecti

2009-08-31 09:37:09

C# Employee
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)