2013-07-13 28 views
0

此代碼不好,因爲訪問時間確實不會被實際打開或訪問該文件的所有應用程序更新。如何在C#中查找打開文件的時間?

File.GetLastAccessTime("d:\\a.txt"); 

我想知道什麼時候打開文件,只是它。我以爲我可以通過閱讀上次訪問時間找到它,但它不工作,因爲它沒有被打開它的應用程序或Windows更新。

回答

2

從MSDN File.GetLastAccessTime()方法:

該方法可以返回一個不準確的值,因爲它使用天然 功能,它們的值可以不被 操作系統被連續地更新。

還檢查了這篇文章:

http://blogs.technet.com/b/filecab/archive/2006/11/07/disabling-last-access-time-in-windows-vista-to-improve-ntfs-performance.aspx

但是,如果我理解你的權利你的應用程序正在訪問該文件,如果是這樣,當你開始你可以設置上次訪問時間訪問它:

File.SetLastAccessTime(path, DateTime.Now); 
+0

謝謝,正是我想看一個目錄並檢測任何文件訪問像op en,修改或刪除或...我檢測除Open以外的所有主題! 當文件剛剛打開和關閉時,我無法檢測到它,因爲lastAccessTime不更新托架窗口或任何其他人! 我想爲此使用它... – mat226

相關問題