c#开辟空间 问题 例如有1G空间 如何开辟为10M的 若干小空间,申请人申请空间时可随时调用这些空间 . 
最好能带程序. 
 

解决方案 »

  1.   

    你是说类似于QQ空间那种WEB网页么?限制用户的空间大小?
      

  2.   

    给出两个获取文件夹大小方法:
    方法一:
        
    using System.IO;     
     public static long GetDirectoryLength(string dirPath)
             {
                //判断给定的路径是否存在,如果不存在则退出
                 if (!Directory.Exists(dirPath))
                     return 0;
                 long len = 0;            //定义一个DirectoryInfo对象
                 DirectoryInfo di = new DirectoryInfo(dirPath);             //通过GetFiles方法,获取di目录中的所有文件的大小
                 foreach (FileInfo fi in di.GetFiles())
                 {
                     len += fi.Length;
                 }             //获取di中所有的文件夹,并存到一个新的对象数组中,以进行递归
                 DirectoryInfo[] dis = di.GetDirectories();
                 if (dis.Length > 0)
                 {
                     for (int i = 0; i < dis.Length; i++)
                     {
                         len += GetDirectoryLength(dis[i].FullName);
                     }
                 }
                 return len;
             }方法二:
             //也是利用递归的思想,只不过是通过File类的Exits方法来判断         //所给路径中所对应的是否为文件        public static long FileSize(string filePath)
             {
                 long temp = 0;             //判断当前路径所指向的是否为文件
                 if (File.Exists(filePath) == false)
                 {
                     string[] str1 = Directory.GetFileSystemEntries(filePath);
                     foreach (string s1 in str1)
                     { 
                         temp += FileSize(s1);
                     }
                 }
                 else
                 {                //定义一个FileInfo对象,使之与filePath所指向的文件向关联,                 //以获取其大小
                     FileInfo fileInfo = new FileInfo(filePath);
                     return fileInfo.Length;
                 }
                 return temp;
             }
      

  3.   

    这里说的空间 说的是用户空间不是 内存空间  类似于QQ的WEB 那种 可以存放 文档 图片类的.  而按照你说的是 已经确定好的用户? 现在是 用户经过申请 批准后给于空间的.