gpt4 book ai didi

c# - *最快*目录列表

转载 作者:太空狗 更新时间:2023-10-29 21:25:13 27 4
gpt4 key购买 nike

我有大量目录,我想尽快读取所有文件。我的意思是,不是 DirectoryInfo.GetFiles 快,而是“get-clusters-from-disk-low-level”快。

当然,.NET 2.0,c#

类似的问题在这里,但这种方法没有任何好处:

C# Directory listing massive directory

有人建议在 FindFirst/FindNext 上使用 pInvoke。有人尝试过并能够分享结果吗?

最佳答案

对于“正常”方法,基本上所有事情都归结为 FindFirstFile/FindNextFile,您实际上并没有比这快多少……那不是 super 涡轮增压。

如果您真的需要速度,请阅读 MFT手动 - 但要知道这需要管理员权限,并且在 NTFS 更新时很容易中断(哦,是的,不适用于非 NTFS 文件系统)。您可能想看看 this code其中有 USN和 MFT 的东西。

但是,也许有不同的解决方案。如果您的应用程序不断运行并且需要获取更改,您可以通过执行一个缓慢的 FindFirstFile/FindNextFile 开始,然后使用目录更改通知支持来通知更新...适用于有限的用户,并且不依赖于文件系统结构。

关于c# - *最快*目录列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3582823/

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