我在Windows 10上运行了一个基本的c#UWP应用程序。
我试图获得StorageFile
这样的最后访问时间:
var basicProperties = await file.GetBasicPropertiesAsync();
var moreProperties = await basicProperties.RetrievePropertiesAsync(
new string[] { "System.DateAccessed" });
var dateAccessed = moreProperties["System.DateAccessed"];
然而,我得到的日期是错误的。它过去太过分了。
如果我查看Windows资源管理器或命令行中的属性,则日期是正确的,并且每次在我的应用程序中打开文件时都会更新。
Get-ChildItem '.\test.txt' | select -ExpandProperty lastacc
仅在我的应用中,上次访问时间错误。我试图访问错误的属性还是有另一种方法来获取最后的访问时间?
更新:
事实证明File.GetLastAccessTime(file.Path);
确实返回了在命令行上报告的正确时间。我去了StorageFile路线,因为该应用程序是沙箱,并且之前没有尝试过基于路径的API。
以上所有假设文件系统都设置为首先跟踪上次访问日期。