/// <summary> /// 遍历指定文件夹下全部的文件和文件夹 /// </summary> /// <param name="path"></param> private static void LoopFile_Info(FileSystemInfo obj, int level) { if (obj.GetType() == typeof(DirectoryInfo)) { Console.WriteLine(LevelLine(level) + obj.Name); level++; var dirObj = (DirectoryInfo)obj; if (dirObj.GetFiles().Length > 0) { foreach (var childFile in dirObj.GetFiles()) { LoopFile(childFile, level); } } if (dirObj.GetDirectories().Length > 0) { foreach (var childDir in dirObj.GetDirectories()) { LoopFile(childDir, level); } } } else { Console.WriteLine(LevelLine(level) +obj.Name); } } /// <summary> /// 遍历指定文件夹下全部的文件和文件夹 /// </summary> /// <param name="path"></param> /// <param name="level"></param> private static void LoopFile_Static(string path, int level) { if (Directory.Exists(path)) { Console.WriteLine(LevelLine(level) + path.Substring(path.LastIndexOf("\\"))); level++; var list = Directory.GetDirectories(path); if (list.Length > 0) { for (int i = 0; i < list.Length; i++) { LoopFileExection(list[i], level); } } var filelist = Directory.GetFiles(path); if (filelist.Length > 0) { for (int i = 0; i < filelist.Length; i++) { Console.WriteLine(LevelLine(level) + filelist[i].Substring(path.LastIndexOf("\\"))); } } } }