C#编程-18:遍历某一路径下所有文件和文件夹

简介: C#编程-18:遍历某一路径下所有文件和文件夹

static List list = new List();//定义list变量,存放获取到的路径

       public static List getPath(string path)

       {

           DirectoryInfo dir = new DirectoryInfo(path);

           FileInfo[] fil = dir.GetFiles();

           DirectoryInfo[] dii = dir.GetDirectories();

           foreach (FileInfo f in fil)

           {

               list.Add(f.FullName);//添加文件的路径到列表

           }

           //获取子文件夹内的文件列表,递归遍历

           foreach (DirectoryInfo d in dii)

           {

               getPath(d.FullName);

               list.Add(d.FullName);//添加文件夹的路径到列表

           }

           return list;

       }

调用此函数需要传入指定的文件夹路径,如 D:\MyFile .可以将该文件夹下的文件和子文件夹路径全部获取,并利用递归,获取子文件夹内所有内容。


获取文件:

String path = @"X:\xxx\xxx";

//第一种方法

var files = Directory.GetFiles(path, "*.txt");

         

foreach (var file in files)

   Console.WriteLine(file);

//第二种方法

DirectoryInfo folder = new DirectoryInfo(path);

         

foreach (FileInfo file in folder.GetFiles("*.txt"))

{

   Console.WriteLine(file.FullName);

}

相关文章
|
JavaScript 前端开发
Vue学习笔记(五) 长乐无极
Vue学习笔记(五) 长乐无极
|
缓存 Java Apache
常见的 HTTP 状态码分类及说明
这篇文章介绍了常见的HTTP状态码分类及其说明,包括1xx信息响应、2xx成功、3xx重定向、4xx客户端错误和5xx服务器错误,并提供了一个使用Apache HttpClient进行HTTP POST请求的Java代码示例。
|
存储 关系型数据库 数据库
【赵渝强老师】PostgreSQL的控制文件
本文介绍了PostgreSQL数据库的物理存储结构,重点解析了控制文件,包括其重要性及如何通过`pg_controldata`命令查看控制文件内容。控制文件记录了数据库运行的关键信息,如数据库状态、WAL位置等。
288 14
|
弹性计算
阿里云ECS的使用心得
本文主要讲述了我是如何了解到ECS,使用ECS的一些经验,以及自己的感悟心得
|
SQL Java 数据处理
实时计算 Flink版产品使用问题之使用MavenShadePlugin进行relocation并遇到只包含了Java代码而未包含Scala代码,该怎么办
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
机器学习/深度学习 移动开发 知识图谱
Python 字符串
Python 字符串
|
应用服务中间件 nginx Docker
【Docker Swarm】搭建Docker Swarm高可用集群(详细版)(下)
【Docker Swarm】搭建Docker Swarm高可用集群(详细版)
397 0
【Docker Swarm】搭建Docker Swarm高可用集群(详细版)(下)
|
存储 SQL 数据采集
ClickHouse V22.8 新特性介绍
ClickHouse V22.8 版本作为社区推荐的 LTS 版本经过几个月的稳定性后迭代后,已经完全可以应用于生产环境。本文将介绍V22.8版本的重要特性发布,包括半结构化数据的存储和分析性能的增强,轻量 Delete 标准 SQL支持,引擎内置远程文件的查询缓存机制等能力的详细介绍,同时对于社区的技术演进方向进行探讨。
1675 1
|
缓存 JavaScript 前端开发