gpt4 book ai didi

c# - 如何使用 System.IO.FileSystemInfo.Refresh

转载 作者:太空宇宙 更新时间:2023-11-03 19:07:05 25 4
gpt4 key购买 nike

令人印象深刻的是缺乏 Refresh 的用法示例。

我正在使用以下方法,它获取的时间不准确

 ViewBag.t1 = System.IO.File.GetLastAccessTime(@"C:\BillingExport\BILLING_TABLE_FILE01_1.txt");

我读到它不准确,因为操作系统尚未执行检查并更新文件读/写时间。

我试过了

 System.IO.FileSystemInfo.Refresh(@"C:\BillingExport\BILLING_TABLE_FILE01_1.txt");

但这行不通,而且我找不到提供类似用法示例的资源。

最佳答案

FileSystemInfo.Refresh 不是静态方法。您为示例显示的内容无法编译。您应该创建一个用文件名初始化的 FileInfo 对象,然后您可以对其调用 Refresh。然后,您应该能够使用 FileInfo 对象的属性来获取上次访问时间和其他相关文件详细信息。

var info = new FileInfo(@"C:\Temp\a.txt");
info.Refresh(@"C:\BillingExport\BILLING_TABLE_FILE01_1.txt");
var lastAccess = info.LastAccessTime;

最后一次编辑基于上面链接的答案 possible duplicate 和CodeCaster的回答:

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

表示在 Vista 中这是默认禁用的。我刚刚检查了我的 Win 8.1 框中的注册表,果然,注册表项就在那里,默认情况下上次访问更新是禁用的。因此,如果您使用的是 Vista 或更高版本,上述代码将无法正常工作。如果您使用的是 XP,那么您应该是黄金级的!

关于c# - 如何使用 System.IO.FileSystemInfo.Refresh,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25414564/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com