gpt4 book ai didi

c# - C#中的文件大小监控

转载 作者:可可西里 更新时间:2023-11-01 11:10:20 30 4
gpt4 key购买 nike

我在系统和管理团队工作,负责创建配额管理应用程序以尝试鼓励用户更好地管理那里的资源,因为我们目前存在磁盘空间问题并且不强制执行硬配额。

目前,我正在使用下面的代码遍历用户主空间中的所有文件,以检索他们正在使用的空间总量。从我在其他地方看到的情况来看,在 C# 中没有其他方法可以做到这一点,问题在于它们的开销相当高,同时它会取消每个文件的大小,然后创建一个总数。

try
{
long dirSize = 0;
FileInfo[] FI = new DirectoryInfo("I:\\").GetFiles("*.*", SearchOption.AllDirectories);
foreach (FileInfo F1 in FI)
{
dirSize += F1.Length;
}

return dirSize;
}

因此,我正在寻找一种更快的方法来执行此操作,或者寻找一种在使用通过 FileSystemWatcher 提供的选项时监视文件大小变化的快速方法。目前我唯一能想到的是创建一个包含每个文件的文件位置和大小的哈希表,这样当发生大小更改事件时,我可以将旧大小与新大小进行比较并更新总数。

如有任何建议,我们将不胜感激。

最佳答案

就尝试编写您自己的管理系统而言,位置和大小表并不是一个坏主意。可能会合并一些 xmlserialization 和 linq to xml 以进行报告等。我认为您已经通过决定使用 FileSystemWatcher 走上了正确的道路

关于c# - C#中的文件大小监控,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2653232/

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