【发布时间】:2012-12-27 15:41:11
【问题描述】:
我有一个方法可以遍历文件夹及其所有子文件夹并获取文件路径列表。但是,我只能弄清楚如何创建它并将文件添加到公共列表,但不知道如何返回列表。方法如下:
public List<String> files = new List<String>();
private void DirSearch(string sDir)
{
try
{
foreach (string f in Directory.GetFiles(sDir))
{
files.Add(f);
}
foreach (string d in Directory.GetDirectories(sDir))
{
DirSearch(d);
}
}
catch (System.Exception excpt)
{
MessageBox.Show(excpt.Message);
}
}
所以,我只是在代码中的某个位置调用DirSearch(),它用路径“填充”列表,但我希望能够多次使用它来创建具有不同目录的不同列表等。
【问题讨论】:
-
为什么不在'DirSearch'中定义List
'files'变量并让'DirSearch'返回'files'? -
谢谢,效果很好。这就是 C# 与其他语言(如 Java)的不同之处,它列出了所有文件或 nodejs 的 readdir。 C# 对文件和目录有不同的方法。谢谢:-)
标签: c# file methods recursion directory