.Net File.GetLastAccessTime更新文件的上次访问时间

San*_*upe 5 c# lastaccesstime

我们使用下面的行来获取文件的上次访问日期和时间.

DateTime dtLastAccesstime = File.GetLastAccessTime(sFilePath);
Run Code Online (Sandbox Code Playgroud)

但是我们面临着奇怪的问题,上面的调用本身会修改Last访问时间.因此,我们有效地将当前时间作为上次访问时间.

Jus*_*tin 7

您可能会发现这篇文章很有用,特别是:

从Windows Vista开始,默认情况下禁用维持上次访问时间.

这意味着现在大多数操作系统都不会保持最后的访问时间(我认为这可能会导致您看到的奇怪行为).

即使不是这种情况,这篇文章也强调了许多场景,其中最后的访问时间可能已经更新,当你不想要的时候 - 你能确定你的应用程序不执行任何其他文件访问吗?