如何将List转换为DirectoryInfo

时间:2015-11-22 09:30:11

标签: c# directoryinfo

在我的应用程序中,我有一个特定的目录,如" C:\ Temp \ Folder1",想象这个目录有以下子目录:

C:\Temp\Folder1\Admin\Billy
C:\Temp\Folder1\Customer\Michael
C:\Temp\Folder1\Admin\Julian
C:\Temp\Folder1\Customer\May
C:\Temp\Folder1\Admin\Sebastian

我使用DirectoryInfo.GetDirectories()获取所有上述子目录并转换为列表以使用C:\ Temp \ Folder1 \ Admin \过滤掉文件夹,并且我设法做到这一点。所以只有"客户"文件夹将保留在DirectoryInfo变量中。

想象一下,我的清单只有以下项目:

C:\Temp\Folder1\Customer\Michael
C:\Temp\Folder1\Customer\May

但是现在我有一个问题,我需要删除DirectoryInfo变量中可用的Customer文件夹,但过滤的记录是一个列表,而不是DirectoryInfo类,所以我无法使用DirectoryInfo.Delete()删除每个Customer文件夹。

那么如何将列表转换为DirectoryInfo或手动将列表中的每个项目添加到DirectoryInfo中,以便我可以在每个Customer文件夹上执行删除?

2 个答案:

答案 0 :(得分:1)

  

如何将列表转换为DirectoryInfo或手动添加每个项目   在DirectoryInfo的列表中,以便我可以在每个上执行删除   客户文件夹?

您可以使用Enumerable.Select投影每个元素并从每个元素创建一个constructor(props) { super(props) // ... this.handleChange = this.handleChange.bind(this) }

DirectoryInfo

答案 1 :(得分:0)

您应该检查System.IO.Directory.Delete(字符串路径)方法。这不需要创建一个新对象来删除文件夹。