這篇文章給大家介紹VB.NET中FileSystemWatcher如何使用,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
VB.NET使用FileSystemWatcher
偵聽文件系統更改通知,并在目錄或目錄中的文件發生更改時引發事件。VB.NET使用FileSystemWatcher 監視指定目錄中的更改??杀O視指定目錄中的文件或子目錄的更改。該組件可以監視本地計算機、網絡驅動器或遠程計算機上的文件。(當然只讀的媒體介質比如cd和dvd,它們文件的屬性不會改變,所以也就不能觸發事件)
若要監視所有文件中的更改,請將 Filter 屬性設置為空字符串 ("")。若要監視特定的文件,請將 Filter 屬性設置為該文件名。例如,若要監視文件 MyDoc.txt 中的更改,請將 Filter 屬性設置為“MyDoc.txt”。也可以監視特定類型文件中的更改。例如,若要監視文本文件中的更改,請將 Filter 屬性設置為“*.txt”。
可監視目錄或文件中的若干種更改。例如,可監視文件或目錄的 Attributes、LastWrite 日期和時間或 Size 方面的更改。通過將VB.NET使用FileSystemWatcher.NotifyFilter 屬性設置為 NotifyFilters 值之一來達到此目的。
可監視文件或目錄的重命名、刪除或創建。例如,若要監視文本文件的重命名,請將 Filter 屬性設置為“*.txt”,并調用 WaitForChanged 方法之一,調用時給出 WatcherChangeTypes 值的 Renamed。
新建一個project,選擇windows 服務類型,命名為WinServiceFileWatching,我們看到project的引用中自動添加了System.ServiceProcess 名空間(這就是創建一個服務的函數集)。從工具中的組件中選擇FileSystemWatcher1,拖放到service1的設計模式上.
然后添加以下代碼:
Protected Overrides Sub OnStart(ByVal args() As String)
' 在此處添加啟動服務的代碼。此方法應設置具體的操作
' 以便服務可以執行它的工作。
FileSystemWatcher1.EnableRaisingEvents = True
' 我們也可以根據輸入的參數args動態設定要監視的對象
'FileSystemWatcher1.path= args(0)
End Sub
' 創建文件(夾)時候觸發,記錄創建信息到e:\log.txt中
Private Sub FileSystemWatcher1_Created(ByVal sender As Object,
ByVal e As System.IO.FileSystemEventArgs) Handles FileSystemWatcher1.CreatedDim fs As New FileStream("e:\log.txt", FileMode.Append)
Dim sw As New StreamWriter(fs)
sw.WriteLine(Now() & Microsoft.VisualBasic.vbTab & "創建" & e.FullPath)
sw.Close()
fs.Close()
End Sub
關于VB.NET中FileSystemWatcher如何使用就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。