一尘不染

Directory.EnumerateFiles与Directory.GetFiles有什么区别?

c#

Directory.EnumerateFilesvs和有GetFiles什么区别?

显然,一个返回数组,另一个返回Enumerable。

还要别的吗?


阅读 517

收藏
2020-05-19

共1个答案

一尘不染

文档

EnumerateFiles和GetFiles方法的区别如下:使用EnumerateFiles时,可以在开始返回整个集合之前开始枚举名称集合;否则,您可以开始枚举名称集合。使用GetFiles时,必须等待返回整个名称数组,然后才能访问该数组。因此,当您处理许多文件和目录时,EnumerateFiles可能会更有效。

因此,基本上,EnumerateFiles返回值a IEnumerable可以稍作延迟评估,而GetFiles返回值a
string[]必须先完全填充后才能返回。

2020-05-19