从主目录中删除具有特定子目录名称的目录

Delete Directory With a Specific Sub Directory Name From The Main Directory

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

这是我目前的代码:

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

我的代码目前将删除主目录中的所有子目录,而不仅仅是目录名称为 'Directory 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(),这将在每次循环时创建子目录数组。