http://community.csdn.net/Expert/topic/2940/2940269.xml?temp=.8619348

解决方案 »

  1.   

    遍历所有文件,相加即可,每个文件都有一个size的属性!顶
      

  2.   

    获取目录下的所有文件,递归using System;
    using System.IO;
    using System.Collections;
    namespace test
    {
    /// <summary>
    /// Class1 的摘要说明。
    /// </summary>
    class Class1
    {
    // 用于实现按照文件名排序的接口,用在Array.Sort调用中
    class SortFile : IComparer
    {
    public int Compare(object x,object y)
    {
    FileInfo fa = (FileInfo)x;
    FileInfo fb = (FileInfo)y;
    return fa.Name.CompareTo(fb.Name);
    }
    } /// <summary>
    /// 对指定文件夹下的所有文件进行处理
    /// </summary>
    /// <param name="diParent">指定文件夹</param> 
    public static void GetDir(DirectoryInfo diParent)
    {
    // 测试目录是否存在
    if(diParent.Exists == false)
    {
    throw new ArgumentException("指定目录无效", "diParent");
    }
    else
    {
    FileInfo[] fis = diParent.GetFiles();
    Array.Sort(fis,new SortFile()); // 对当前目录中的文件进行处理
    foreach (FileInfo fi in fis)
    {
    Console.WriteLine(fi.FullName);
    // TODO:实现你自己处理
    } foreach (DirectoryInfo di in diParent.GetDirectories())
    {
    // 递归方法,处理下级子目录
    GetDir(di);
    }
    }
    } /// <summary>
    /// 应用程序的主入口点。
    /// </summary>
    [STAThread]
    static void Main(string[] args)
    {
    // 测试
    DirectoryInfo di = new DirectoryInfo(@"D:\测试目录");
    GetDir(di);
    Console.ReadLine();
    }
    }
    }