using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Collections;
public class mm
{
    public static void Main()
    {
        foreach (string dirStr in Directory.GetDirectories("d:\\1"))
        {
            DirectoryInfo dir = new DirectoryInfo(dirStr);
            ArrayList folders = new ArrayList();
            FileSystemInfo[] fileArr = dir.GetFileSystemInfos();
            for (int i = 0; i < folders.Count; i++)
            {
                FileInfo f = folders[i] as FileInfo;
                if (f == null)
                {
                    DirectoryInfo d = folders[i] as DirectoryInfo;
                    d.Delete();
                }
            }
        }
    }

以上代码是用来删除一个文件夹中的所有文件夹,网上当的,但是执行就是不成功,到底是什么问题呀??

解决方案 »

  1.   

    folders 只实例化,根本没有赋过值,for循环都进不去……
    要删除不需要这么麻烦,一句话搞定:System.IO.Directory.Delete("D:\\1", true);
      

  2.   

    既然是网上down的,为什么不多找找,down个正确的。
      

  3.   

    遍历当前文件夹中所有的文件夹,并且删除就行
                foreach (string dirStr in Directory.GetDirectories("c:\\1"))
                {
                    Directory.Delete(dirStr, true);
                }
      

  4.   

    只知道down代码,不求甚解,结果就是这样,连最基本的调试能力都没有