我们使用下面的行来获取文件的上次访问日期和时间。
DateTime dtLastAccesstime = File.GetLastAccessTime(sFilePath);
但我们面临着奇怪的问题,上面的调用本身修改了最后访问时间。因此,我们有效地将当前时间作为上次访问时间。
你可能会发现这个帖子 http://blogs.msdn.com/b/oldnewthing/archive/2011/10/10/10222560.aspx有用,特别是:
从 Windows Vista 开始,默认情况下禁用维护上次访问时间 http://blogs.technet.com/b/filecab/archive/2006/11/07/disabling-last-access-time-in-windows-vista-to-improve-ntfs-performance.aspx.
这意味着现在大多数操作系统不会维护上次访问时间(我认为这可以解释您所看到的奇怪行为)。
即使情况并非如此,这篇文章也重点介绍了许多场景中的一些情况,其中最后访问时间可能在您无意时被更新 - 您能否确定您的应用程序不执行任何其他文件访问?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)