資料夾中檔案搜尋
阿新 • • 發佈:2020-08-29
/// <summary> /// 獲取所有檔案 /// </summary> /// mark 代表需要壓縮的檔案型別*.*代表所有檔案 /// <returns></returns> public static Dictionary<string, DateTime> GetAllFies(string dir,string mark) { Dictionary<string, DateTime> FilesList = new Dictionary<string, DateTime>(); DirectoryInfo fileDire = new DirectoryInfo(dir); if (!fileDire.Exists) { throw new System.IO.FileNotFoundException("目錄:" + fileDire.FullName + "沒有找到!"); } GetAllDirFiles(fileDire, FilesList, mark); GetAllDirsFiles(fileDire.GetDirectories(), FilesList, mark);return FilesList; } /// <summary> /// 獲取一個資料夾下的所有資料夾裡的檔案 /// </summary> /// <param name="dirs"></param> /// mark 代表需要壓縮的檔案型別*.*代表所有檔案 /// <param name="filesList"></param> public static void GetAllDirsFiles(DirectoryInfo[] dirs, Dictionary<string, DateTime> filesList, string mark) { foreach (DirectoryInfo dir in dirs) { foreach (FileInfo file in dir.GetFiles(mark)) { filesList.Add(file.FullName, file.LastWriteTime); } GetAllDirsFiles(dir.GetDirectories(), filesList, mark); } } /// <summary> /// 獲取一個資料夾下的檔案 /// </summary> /// mark 代表需要壓縮的檔案型別*.*代表所有檔案 /// <param name="dir">目錄名稱</param> /// <param name="filesList">檔案列表HastTable</param> public static void GetAllDirFiles(DirectoryInfo dir, Dictionary<string, DateTime> filesList, string mark) { foreach (FileInfo file in dir.GetFiles(mark)) { filesList.Add(file.FullName, file.LastWriteTime); } }