c#遍历文件夹获得所有文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#遍历文件夹获得所有文件相关的知识,希望对你有一定的参考价值。

在c#中,想要获得一个文件夹下的所有子目录以及文件十分简单。

首先,获取目录的情况下,DirectoryInfo.GetDirectories():获取目录(不包含子目录)的子目录,返回类型为DirectoryInfo[],支持通配符查找;

其次,获取文件的情况下, DirectoryInfo.GetFiles():获取目录中(不包含子目录)的文件,返回类型为FileInfo[],支持通配符查找;

最后,DirectoryInfo. GetFileSystemInfos():获取指定目录下(不包含子目录)的文件和子目录,返回类型为FileSystemInfo[],支持通配符查找;
如何获取指定文件的基本信息;
    FileInfo.Exists:获取指定文件是否存在;
    FileInfo.Name,FileInfo.Extensioin:获取文件的名称和扩展名;
    FileInfo.FullName:获取文件的全限定名称(完整路径);
    FileInfo.Directory:获取文件所在目录,返回类型为DirectoryInfo;
    FileInfo.DirectoryName:获取文件所在目录的路径(完整路径);
    FileInfo.Length:获取文件的大小(字节数);
    FileInfo.IsReadOnly:获取文件是否只读;
    FileInfo.Attributes:获取或设置指定文件的属性,返回类型为FileAttributes枚举,可以是多个值的组合
    FileInfo.CreationTime、FileInfo.LastAccessTime、FileInfo.LastWriteTime:分别用于获取文件的创建时间、访问时间、修改时间;

想要获取某一文件夹下的所有文件,通用的方法就是遍历

   public static void GetAllDir(string dir1)
        {
            List<string> list = new List<string>();
            DirectoryInfo dir = new DirectoryInfo(dir);
            DirectoryInfo[] dirinfo = dir.GetDirectories();
           
            for (int i = 0; i < dirinfo.Length; i++)
            {

                list.Add(dirinfo[i].FullName);
                GetAllDir(dirinfo[i].FullName);
            }
            
            for (int i = 0; i < list.Count; i++)
            {
                    Console.WriteLine(list[i]);
            }

        }

  

 

以上是关于c#遍历文件夹获得所有文件的主要内容,如果未能解决你的问题,请参考以下文章

C#遍历指定文件夹中所有文件的3种方法

C# 遍历文件夹及子目录下所有图片

c#实现遍历文件夹里的所有文件内容,然后删除某个内容?

C# 获得目录创建时间的源码片段

c#怎么遍历文件夹下面的所有文件

C#如何遍历一个文件夹下面所有的文件