递归遍历文件夹、取所有文件。包括子目录。

  private int count = 0;

private int TransformFiles(string path)
{


DirectoryInfo dir = new DirectoryInfo(path);

DirectoryInfo[] dirs = dir.GetDirectories(); //获取子目录
FileInfo[] files = dir.GetFiles("*.*"); //获取文件名
List<string> list = new List<string>();
foreach (FileInfo f in files)
{
count++; //对文件进行操作。比如 这里取文件个数
}
foreach (DirectoryInfo d in dirs)
{

TransformFiles(dir + "\" + d.ToString()); //递归调用
}
return count;
}

测试 :   var ddaa= TransformFiles("D:\BetterMan\项目文件\20170516");  亲写可行。

原文地址:https://www.cnblogs.com/NotEnough/p/6872770.html