我的目录包含近 14,000,000 个 *.wav 格式的音频样本。
所有普通存储,没有子目录。
我想循环浏览文件,但是当我使用DirectoryInfo.GetFiles()
在该文件夹上,整个应用程序冻结了几分钟!
可以用另一种方式完成吗?也许读取 1000 个,处理它们,然后获取下 1000 个,依此类推?
你有没有尝试过枚举文件 http://msdn.microsoft.com/en-us/library/dd413232.aspxDirectoryInfo 类的方法?
正如 MSDN 所说
The EnumerateFiles
and GetFiles
方法的不同之处如下: 当您
使用EnumerateFiles
,你可以开始枚举集合FileInfo
返回整个集合之前的对象;当你
使用GetFiles
,你必须等待整个数组FileInfo
反对
在您可以访问数组之前返回。因此,当你在
处理许多文件和目录,EnumerateFiles
可以更多
高效的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)