C#获取文件夹文件列表

来源:互联网 发布:php网上购物系统 编辑:程序博客网 时间:2024/04/28 12:40

  /// <summary>
        /// 获取所有文件列表
        /// </summary>
        /// <param name="info"></param>
        public void GetAllFiles(ref ArrayList fileinfo_list, string search_path)
        {
            if (search_path == null || search_path == "")
                return;

            try
            {
                DirectoryInfo dir = new DirectoryInfo(search_path);
                //不是目录
                if (dir == null) return;

                FileSystemInfo[] files = dir.GetFileSystemInfos();
                for (int i = 0; i < files.Length; i++)
                {
                    FileInfo file = files[i] as FileInfo;                   
                    //是文件
                    if (file != null)
                    {
                        if (file.FullName.Substring(file.FullName.LastIndexOf(".")).ToUpper() == ".TXT")
                        {
                            ClassMyFileInfo myfileinfo = new ClassMyFileInfo(ref file);

                            fileinfo_list.Add(myfileinfo);
                        }
                    }
                    //对于子目录
                    else
                    {
                        dir = files[i] as DirectoryInfo;
                        if (dir != null)
                        {
                            GetAllFiles(ref fileinfo_list, dir.FullName);
                        }
                    }
                }
            }
            catch (System.Exception err)
            {
                MRLogging.Logger.Log.InfoFormat("GetAllFiles failed: {0}", err.Message);
            }         
        }