专栏首页acoolgiser_zhuanlanC#如何遍历某个文件夹中的所有子文件和子文件夹(循环递归遍历多层),得到所有的文件名,存储在数组列表中

C#如何遍历某个文件夹中的所有子文件和子文件夹(循环递归遍历多层),得到所有的文件名,存储在数组列表中

string path = "D:\\test";
List<string> nameList = new List<string>();
Director(path,nameList);

响应(调用)代码如上面,比如写在某个事件中。首先是有一个已知的路径,现在要遍历该路径下的所有文件及文件夹,因此定义了一个列表,用于存放遍历到的文件名。

递归遍历如下:将已知路径和列表数组作为参数传递,

 public void Director(string dir,List<string> list)
 {
      DirectoryInfo d = new DirectoryInfo(dir);
      FileInfo[] files = d.GetFiles();//文件
      DirectoryInfo[] directs = d.GetDirectories();//文件夹
      foreach (FileInfo f in files)
      {
           list.Add(f.Name);//添加文件名到列表中  
      }
      //获取子文件夹内的文件列表,递归遍历  
      foreach (DirectoryInfo dd in directs)
      {
            Director(dd.FullName, list);
      } 
 }

这样就得到了一个列表,其中存储了所有的文件名,如果要对某一个文件进行操作,可以循环查找:

  foreach (string fileName in nameList)
  {
      if (fileName == "***")
      {...}
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • vue.js中的v-if指令 使用template同时判断多个元素

    当同时要控制多个元素(比如多个div,或其他元素)的显示与否时,可以使用vue.js的内置指令template把这多个元素包含起来,如下:

    acoolgiser
  • node.js中exports 和 module.exports 的区别

    解释:a 是一个对象,b 是对 a 的引用,即 a 和 b 指向同一块内存,所以前两个输出一样。当对 b 作修改时,即 a 和 b 指向同一块内存地址的内容发生...

    acoolgiser
  • DevExpress控件中的gridcontrol表格控件,如何在属性中设置某一列显示为图片(图片按钮)

    DevExpress控件中的gridcontrol表格控件,如何在属性中设置某一列显示为图片(图片按钮)?效果如下图:

    acoolgiser
  • 这或许是对小白最友好的python入门了吧——14,遍历字典

    同列表元组一样,字典也能够遍历,但是和列表元组不一样的是,字典遍历分三个部分:遍历键值对、遍历键、遍历值 首先我们新建一个字典: score = {"engl...

    用户1315847
  • 5.2二叉搜索树遍历(前序、中序、后序、层次、广度优先遍历)

    前言:在上一节中,我们对树及其相关知识做了了解,对二叉搜索树做了基本的实现,下面我们继续完善我们的二叉搜索树。

    wfaceboss
  • 遍历

    前序遍历(DLR),是二叉树遍历的一种,也叫做先根遍历、先序遍历、前序周游,可记做根左右。前序遍历首先访问根结点然后遍历左子树,最后遍历右子树。

    Centy Zhao
  • 图的深度遍历和广度遍历

    图的深度遍历和广度遍历都不算很难像极了二叉树的前序遍历和层序遍历,如下面的图,可以用右边的邻接矩阵进行表示,假设以顶点0开始对整幅图进行遍历的话,两种遍历方式的...

    233333
  • 爬虫课程(四)|深度优先和广度优先算法

    黄小怪
  • 【剑指offer】4.二叉树的遍历和重建

    两个字符串,其长度n均小于等于26。 第一行为前序遍历,第二行为中序遍历。 二叉树中的结点名称以大写字母表示:A,B,C....最多26个结点。

    ConardLi
  • 如何根据二叉树的两种遍历方式重建二叉树(理论篇)

    我们知道,二叉树有三种不同的遍历方式:先序遍历,中序遍历和后序遍历。这三种遍历方式本质上是根据根节点的位置来命名的。根节点在前面,就是先序遍历;根节点在中间,就...

    青南

扫码关注云+社区

领取腾讯云代金券