我需要确定目录中文件/子目录的数量。我不关心哪个文件/目录实际上在那个目录中。有没有比使用更有效的方法确定目录中文件的数量
_directoryInfo.GetDirectories().Length +
_directoryInfo.GetFiles().Length
谢谢。
我需要确定目录中文件/子目录的数量。我不关心哪个文件/目录实际上在那个目录中。有没有比使用更有效的方法确定目录中文件的数量
_directoryInfo.GetDirectories().Length +
_directoryInfo.GetFiles().Length
谢谢。
这可能是因为它得到一样好,但你应该使用GetFileSystemInfos()
代替,这将给你文件和目录:
_directoryInfo.GetFileSystemInfos().Length
我会试试看。谢谢。 – Mav3rick 2009-08-05 20:27:55
肖恩·布朗斯答案可能适用于你的代码更好 – 2009-08-05 20:31:04
您可以使用0中找到的GetFileSystemEntries
方法类,然后查询返回的项目数组的Length
。
DirectoryInfo d = new DirectoryInfo(@"C:\MyDirectory\");
FileInfo[] files = d.GetFiles("*.*");
int NumberOfFilesInDir;
foreach(FileInfo file in files)
{
NumberOfFilesInDir++;
}
为什么不只是做files.Length? – 2009-08-07 18:28:02
我是一名自学成才的程序员,以前没有这样使用过。我并不是想暗示原来的答案不好,我只是提供另一种方式...... :-) – 2009-08-10 17:32:14
重复: http://stackoverflow.com/questions/1192951/quicker-quickest-way-to-get-number-of-files-in-a-directory-with-over-200-000 -f http://stackoverflow.com/questions/349251/how-do-i-find-out-how-many-files-are-in-a-directory – JohnFx 2009-08-05 20:45:52