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

        }

  

时间: 2024-12-28 05:38:13

c#遍历文件夹获得所有文件的相关文章

OpenCV实现遍历文件夹下所有文件

OpenCV中有实现遍历文件夹下所有文件的类Directory,它里面包括3个成员函数:(1).GetListFiles:遍历指定文件夹下的所有文件,不包括指定文件夹内的文件夹:(2).GetListFolders:遍历指定文件夹下的所有文件夹,不包括指定文件夹下的文件:(3).GetListFilesR:遍历指定文件夹下的所有文件,包括指定文件夹内的文件夹. 若要使用Directory类,则需包含contrib.hpp头文件,此类的实现在contrib模块. 下面为测试代码: cv::Dire

Java遍历文件夹下所有文件并替换指定字符串

应用场景:比如有一个深层次的文件目录结构,如:javaAPI 每个文件里面都有相同的内容,而我们要统一修改为其他内容.上千个文件如果一个个修改显得太不明智. import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.InputStreamReader; import java.io.PrintWriter; public class Test { /** *

遍历文件夹中所有文件(C++)

想要实现对 文件夹 中 文件信息 的 查找与路径获取,需要用到 头文件 #include "io.h" 中的 一个结构体 和 三个函数 1. 结构体 struct _finddata_t 用来存储文件各种信息. struct _finddata_t { unsigned attrib;//文件的属性 time_t time_create;//文件的创建时间 time_t time_access;//文件最后一次被访问的时间 time_t time_write;//文件最后一次被修改的时

PHP遍历文件夹下的文件和获取到input name的值

<?php$dir = dirname(__FILE__); //要遍历的目录名字 ->当前文件所在的文件夹//$dir='D:\PHP\wamp\www\admin\hosts\admin'; //PHP遍历文件夹下所有文件 $handle=opendir($dir."."); $arr = array();while($file=readdir($handle)){  if(is_file($file)){ if ($file != "."&

Python遍历文件夹和读写文件的方法

本文和大家分享的主要是python开发中遍历文件夹和读写文件的相关内容,一起来看看吧,希望对大家学习和使用这部分内容有所帮助. 需 求 分 析 1.读取指定目录下的所有文件 2.读取指定文件,输出文件内容 3.创建一个文件并保存到指定目录 实 现 过 程 Python写代码简洁高效,实现以上功能仅用了40行左右的代码~ 昨天用Java写了一个写入.创建.复制.重命名文件要将近60行代码: 不过简洁的代价是牺牲了一点点运行速度,但随着硬件性能的提升,运行速度的差异会越来越小,直到人类无法察觉~ #

C#遍历文件夹下所有文件

FolderForm.cs的代码如下: using System; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Text; using System.Windows.Forms; namespace HoverTree.Hewenqi { public partial class FolderForm : Form { public FolderForm() {

遍历远程服务器某个文件夹下的文件

遍历远程文件夹下的文件,您可以考虑使用FTP的方式,具体的请参考下述代码:private string GetFileNames(string URI){WebClient wClient = new WebClient();FtpWebRequest FtpClient;Uri uri = new Uri(URI);FtpClient = (FtpWebRequest)WebRequest.Create(uri); FtpClient.Credentials.GetCredential(uri

批处理脚本遍历指定文件夹下的文件

批处理脚本 1. 遍历指定文件夹下的文件 1.1 命令解释 命令: for [参数] %%变量名 in (匹配符) do (执行的命令) 切记:每个指令之间必须以空格隔开,in 与 ( 之间有空格,do 与 ( 间也有空格,否则命令会无法成功执行 ps:本节只讲用批处理脚本执行 for 命令遍历文件夹的场景,因此以下分析每个指令意义时,不介绍其他含义 []:表示此项指令为可选 [参数]:参数取值一共有四种: /d, /r, /l, /f,加上无参数,所以一共五种场景 无参:遍历当前路径的文件夹下

python遍历文件夹中所有文件夹和文件,os.walk

python中可以用os.walk来遍历某个文件夹中所有文件夹和文件. 例1: import os filePath = 'C:/Users/admin/Desktop/img' for dirpath, dirnames, filenames in os.walk(filePath): print(dirpath, dirnames, filenames) 输出结果: 例2: import os filePath = 'C:\\Users\\admin\\Desktop\\img' for d

python 遍历文件夹并统计文件数量

使用python遍历文件夹下的子文件夹及文件,并统计出文件夹下文件的数量: 1 import os 2 count = 0 3 4 5 # 遍历文件夹 6 def walkFile(file): 7 for root, dirs, files in os.walk(file): 8 # root 表示当前正在访问的文件夹路径 9 # dirs 表示该文件夹下的子目录名list 10 # files 表示该文件夹下的文件list 11 12 # 遍历文件 13 for f in files: 14