Dan*_*olo 163
来自文档:
EnumerateFiles和GetFiles方法的不同之处如下:当您使用EnumerateFiles时,您可以在返回整个集合之前开始枚举名称集合; 当您使用GetFiles时,您必须等待返回整个名称数组,然后才能访问该数组.因此,当您使用许多文件和目录时,EnumerateFiles可以更高效.
所以基本上,EnumerateFiles
返回一个IEnumerable
可以稍微懒惰地评估,而GetFiles
返回一个string[]
必须在它返回之前完全填充.
Hen*_*man 30
EnumerateFiles
返回IEnumerable<string>
,这意味着延迟执行.它仅适用于Fx4及以上版本.
Sko*_*tte 14
使用EnumerateFiles时,如果您正在使用,则所有速度都会丢失.Last
.这当然是有道理的,因为要到达最后一个文件,它需要枚举所有文件,然后抓住最后一个文件.
但是,使用.First
或.FirstOrDefault
变得非常快,因为它只是抓住第一个项目并继续前进.