/// <summary> /// 查看所有目录 /// </summary> /// <param name="path"></param> /// <returns></returns> public static IEnumerable <DirectoryInfo> GetAllDirInfo(string path) { var dirInfo = DirectoryHelp.GetDirInfo(path); var dirs = Directory.EnumerateDirectories(dirInfo.FullName, "*.*", SearchOption.AllDirectories); //必需要使用完整物理地址 foreach (var dir in dirs) { yield return(DirectoryHelp.GetDirInfo(dir)); } }
/// <summary> /// 获取目录下所有文件 /// 适合大目录查询 /// </summary> /// <param name="path"></param> /// <param name="IsChilds">是否搜索所有子录</param> /// <param name="searchPattern">搜索字符串</param> /// <returns></returns> public static IEnumerable <FileInfo> GetAllFiles(string path, bool IsChilds = true, string searchPattern = "*.*") { var dirInfo = DirectoryHelp.GetDirInfo(path); if (IsChilds) { return(dirInfo.EnumerateFiles(searchPattern, SearchOption.AllDirectories)); } return(dirInfo.EnumerateFiles(searchPattern, SearchOption.TopDirectoryOnly)); }