2011-08-29 40 views
2

我正在尋找一種巧妙的方式來實現C#中的while循環,該循環持續循環直到FileInfo的LastAccessTime更改。循環直到文件LastAccessTime更改

我正在使用FileSystemWatcher在文件上做某些工作時引發更改事件,但是隻要打開文件就會觸發此事件。

任何想法?

回答

2

查看FileSystemWatcher上的NotifyFilter屬性。 FileSystemWatcher不支持查看上次訪問時間。

2

FileSystemWatcher似乎是正確的做法。要僅收到LastWrite的通知,請將NotifyFilter property設置爲反映:

watcher.NotifyFilter = NotifyFilters.LastWrite; 
+0

感謝您抽出時間回覆我的信息。我瞭解LastWrite以及如何將特定文件和/或文件類型過濾掉。但是,似乎沒有一些定時器延遲線程休眠過程,直到文件關閉之前,它不可能無限循環。從「愚蠢的用戶」的角度來看,文件可能會全天打開 - 不知道多久,所以我只想在文件保存/關閉時觸發事件。我認爲filewather的Changed屬性可以做到這一點,但事實證明,只要打開文件就會引發此事件。謝謝。 – Risho