练习: 如果输入的不是路径也会输出 1 。
using System;
using System.IO;
namespace 进阶Csharp01
{
class Program
{
static void Main(string[] args)
{
// 统计文件总和
static int getAllFiles(string path)
{
try
{
// 下面三行为主要代码
var num = Directory.GetFiles(path);
var num1 = Directory.GetDirectories(path);
int count = num.Length + num1.Length; // 第一个目录下的文件和文件夹个数
foreach (var item in num1)
{
if (Directory.Exists(item))
{
// 当存在目录时递归调用
count += getAllFiles(item);
}
}
// 返回一个目录下得所有文件和目录
return count;
}
catch (Exception)
{
// 访问根目录某个文件会报错,+1 即可
return 1;
}
}
Console.WriteLine("填入一个路径用于查找:{0}", getAllFiles(Console.ReadLine()));
}
}
}