c# - 递归算法

标签 c# asp.net file recursion

嘿,我正在尝试创建目录中所有文件的名称列表(带扩展名),以及所有文件中的所有文件,但我需要使用递归算法。我不确定我是否在正确的轨道上!对 C# 很陌生

最佳答案

我通常用队列做这种事情:

// Make sure rootDir exists first...

var files = new List<string>();
var dirs = new Queue<string>();
dirs.Enqueue(rootDir);

while(dirs.Count > 0 ) {

  var dir = dirs.Dequeue();

  foreach( var fileName in Directory.GetFiles(dir) ) {
    files.Add(fileName);
  }

  foreach( var subDir in Directory.GetDirectories(dir) ) {
    dirs.Enqueue(subDir);
  }
}

// Now populate your list with the files collection.

关于c# - 递归算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15129115/

相关文章:

c# - 使用 .NET Core Razor Pages 将文件下载到浏览器

delphi - Delphi:拒绝其他进程访问文件

c# - 我应该把我的存储库放在哪一层?

c# - 将JObject转换为匿名类型

c# - 如何异步初始化静态类

c# - 事件查看器创建事件 ID C#

asp.net - asp.net单选按钮分组

javascript - 如何以及在何处安全地存储访问 token

c# - 锁定文件不被除我以外的任何人更改?

file - 形状文件 (GIS) 到文本