System.IO.DirectoryInfo.EnumerateDirectories 方法
方法描述
返回当前目录中的目录信息的可枚举集合。
语法定义(C# System.IO.DirectoryInfo.EnumerateDirectories 方法 的用法)
public IEnumerableEnumerateDirectories()
参数/返回值
参数值/返回值 | 参数类型/返回类型 | 参数描述/返回描述 |
---|---|---|
返回值 | System.Collections.Generic.IEnumerable |
当前目录中的目录的可枚举集合。 |
提示和注释
EnumerateDirectories 和 GetDirectories 方法不同点在于:当使用 EnumerateDirectories时,您可以在返回整个集合之前开始枚举 DirectoryInfo 对象的集合;当您使用 GetDirectories 时,则必须等待整个 DirectoryInfo 数组都被返回后才能访问数组。 因此,在处理许多文件和目录时,EnumerateDirectories 可能更高效。
此方法预填充下面的 DirectoryInfo 属性的值:
Attributes
CreationTime
CreationTimeUtc
LastAccessTime
LastAccessTimeUtc
LastWriteTime
LastWriteTimeUtc
返回的集合未缓存;对于 GetEnumerator 方法在集合上的每次调用都将启动新枚举。
System.IO.DirectoryInfo.EnumerateDirectories 方法例子
有关示例,请参见 EnumerateDirectories(String) 方法。
// Create a DirectoryInfo of the Program Files directory. DirectoryInfo dirPrograms = new DirectoryInfo(@"c:\program files"); DateTime StartOf2009 = new DateTime(2009, 01, 01); // LINQ query for all directories created before 2009. var dirs = from dir in dirPrograms.EnumerateDirectories() where dir.CreationTimeUtc < StartOf2009 select new { ProgDir = dir, }; // Show results. foreach (var di in dirs) { Console.WriteLine("{0}", di.ProgDir.Name); }
异常
异常 | 异常描述 |
---|---|
DirectoryNotFoundException | 封装在 DirectoryInfo 对象中的路径无效(例如,在未映射的驱动器上)。 |
SecurityException | 调用方没有所要求的权限。 |
版本信息
.NET Framework 受以下版本支持:4 .NET Framework Client Profile 受以下版本支持:4
适用平台
Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2 .NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。