包含子文件夹的总文件大小

本文关键字:文件大小 文件夹 包含 | 更新日期: 2023-09-27 18:20:24

迭代文件夹和子文件夹以获得从指定位置开始的每个文件夹的总大小的最佳方法是什么?

一个小样本:

C:/,D:/,F:/games,G:/bla/bla/bla,

我想要一种检查根目录大小的方法。。这样的东西:

C:/totalsize=1000GB,D:/totalsize=1000GB,F:/games F:/=1000GB的总大小,G:/bla/bla/bla,G:/=1000GB的总大小

foreach (string directory in drives)
        {
            if (directory == GoPro1 || directory == GoPro2 || directory == GoPro3 || directory == GoPro4)
            {
                //gets drive letter from directory location
                var drive = Path.GetPathRoot(directory);
                //create new drive info
                DriveInfo di = new DriveInfo(drive);
                verbruik[teller1] = ("Total Size " + di.TotalSize / 1024 / 1024 / 1024 + " GB " + "Free Space " + di.AvailableFreeSpace / 1024 / 1024 / 1024 + "GB" + "       Total Sub dir: " + drive);
                teller1 = teller1 + 1;
            }
        }

这是我所拥有的,但不会显示所选子文件夹的总大小。

包含子文件夹的总文件大小

public static long GetFolderSize(string directory)
{
    return new DirectoryInfo(directory).GetFiles("*.*", SearchOption.AllDirectories).Sum(file => file.Length);
}