C# 获得指定文件夹中指定后缀的所有文件

using System.IO;
using System.Collections;
namespace VSIXNibiruStudioPluginProject
{
    // 获得指定文件夹下指定后缀的所有文件
    class GetFiles
    {
        ArrayList alst;
        // 获得文件夹中指定后缀的文件
        // dir是文件夹,extension是后缀
        public void GetFile(string dir,string extension)
        {
            try
            {
                string[] files = Directory.GetFiles(dir);
                foreach (string file in files)
                {
                    string exname = file.Substring(file.LastIndexOf(".") + 1);                             
                    if (extension.IndexOf(file.Substring(file.LastIndexOf(".") + 1)) > -1)
                    {
                        FileInfo fi = new FileInfo(file);
                        alst.Add(fi.FullName);
                    }
                }
            }
            catch
            {
            }
        }
        // 获得文件夹中的文件及其子文件夹中的文件
        public void GetDirs(string path, string extension)
        {
            GetFile(path, extension);
            try
            {
                string[] dirs = Directory.GetDirectories(path);
                foreach (string dir in dirs)
                {
                    GetDirs(dir, extension);
                }
            }
            catch
            {
            }
        }
        // 获得指定文件夹下指定后缀的所有文件
        public string[] Readlist(string path,string extension)
        {
            alst = new ArrayList();  // 清空alst
            GetDirs(path,extension);
            return (string[])alst.ToArray(typeof(string));
        }        
    }
}

版权声明:本文为weixin_38973882原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。