Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 确定目录中的文件数_C#_.net - Fatal编程技术网

C# 确定目录中的文件数

C# 确定目录中的文件数,c#,.net,C#,.net,我需要确定目录中文件/子目录的数量。我不在乎哪个文件/目录实际上在那个目录中。有没有比使用更有效的方法 _directoryInfo.GetDirectories().Length + _directoryInfo.GetFiles().Length 谢谢。这可能是最好的了,但您应该使用它,它将为您提供文件和目录: _directoryInfo.GetFileSystemInfos().Length 然后只需要获取文件路径数组的大小 代码来源: 您可以使用目录类中的GetFileSystem

我需要确定目录中文件/子目录的数量。我不在乎哪个文件/目录实际上在那个目录中。有没有比使用更有效的方法

_directoryInfo.GetDirectories().Length +
_directoryInfo.GetFiles().Length

谢谢。

这可能是最好的了,但您应该使用它,它将为您提供文件和目录:

_directoryInfo.GetFileSystemInfos().Length
然后只需要获取文件路径数组的大小

代码来源:

您可以使用
目录
类中的
GetFileSystemEntries
方法,然后查询返回的项目数组的
长度。

重复:为什么不只做files.Length?我是自学成才的程序员,以前从未使用过这种方法。我不是想暗示原来的答案不好,我只是提供了另一种方式…:-)
DirectoryInfo d = new DirectoryInfo(@"C:\MyDirectory\");
FileInfo[] files = d.GetFiles("*.*");

int NumberOfFilesInDir;

foreach( FileInfo file in files )
{
   NumberOfFilesInDir++;
}
DirectoryInfo d = new DirectoryInfo(@"C:\MyDirectory\");
FileInfo[] files = d.GetFiles("*.*");

int NumberOfFilesInDir;

foreach( FileInfo file in files )
{
   NumberOfFilesInDir++;
}