文件夹中文件搜索

/// <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);
            }
        }

 

posted @ 2020-08-29 14:47  消逝的風  阅读(162)  评论(0)    收藏  举报