使用主目录中的特定子目录名称删除目录

时间:2015-12-18 08:28:52

标签: c# asp.net directory subdirectory

我有一个包含许多子目录的主目录。 有谁知道如何从主目录中删除目录名为“目录1”的子目录?

这是我目前的代码:

if (Directory.Exists(MainDirectory))
            {
                foreach (DirectoryInfo SubDir in new DirectoryInfo(MainDirectory).GetDirectories())
                {
                        SubDir.Delete(true);                      
                }
            }

我的代码目前将删除主目录中的所有子目录,而不仅仅删除目录名为“目录1”的子目录。

1 个答案:

答案 0 :(得分:1)

试试这个;

if (Directory.Exists(MainDirectory))
{
    List<DirectoryInfo> directories = new DirectoryInfo(MainDirectory).GetDirectories().ToList();

    foreach (DirectoryInfo SubDir in directories)
    {
         if (SubDir.Name.Equals("Directory 1", StringComparison.OrdinalIgnoreCase))
             SubDir.Delete(true);
    }
}

首先获取要列出的所有子目录并循环列表而不是循环new DirectoryInfo(MainDirectory).GetDirectories(),这将在每次循环时创建子目录数组。