查找具有特定大小参数的所有文件夹?

时间:2011-08-19 13:48:28

标签: recursion size directory

我正在寻找一种好方法来查找内容为500k或更少的所有文件夹。我认为这涉及递归地转到层次结构中的最低文件夹,然后“读取”以获得总大小。所有的想法都受到赞赏(如果我真的需要,可以使用.NET框架或PowerShell),谢谢。

2 个答案:

答案 0 :(得分:1)

这可以帮到你。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;

namespace GetDirectorySize
{
    class Program
    {
        static void Main(string[] args)
        {
            long maxFolderSizeInBytes = 20000000;

            foreach (var directory in Directory.GetDirectories(@"C:\Projects\Visual Studio 2010\"))
            {
                string[] a = Directory.GetFiles(directory, "*.*");
                long i = 0;
                foreach (string name in a)
                {
                    FileInfo info = new FileInfo(name);
                    i += info.Length;
                }
                if (i <= maxFolderSizeInBytes)
                { 
                    Console.WriteLine(directory);
                }
            }
            Console.ReadLine();
        }
    }
}

答案 1 :(得分:0)