使用M.Babcock代码根据文件名的“模式”获取文件列表,但下面的代码完成了这项工作但不查看子目录中的文件。任何帮助如何查看Sub Dir中的文件模式
我知道如果使用以下代码就可以完成这项工作
DirectoryInfo[] DI = new DirectoryInfo(rootdir).GetDirectories("*.*", SearchOption.AllDirectories ) ;
但是我无法理解如何更改他的代码以查看sub dir中的文件
M.Babcock代码
var getfiles = new fileshare.Program();
string realname = "*main*";
string Location = "SVR01";
var fileList = getFiles.GetFileList(realname, Location);
var anymatch = fileList.Any();
if (anymatch) // Or possibly `if (fileList.Any())` if anymatch isn't
// really used anywhere else
baseMeta();
foreach (var file in getfiles.GetFileList(realname,Location))
getfiles.copytolocal(file.FullName);
switch (Location)
{
case "SVR01":
directory = @"\\SVR01\Dev";
break;
case "SVR02":
directory = @"\\SVR02\Dev";
break;
case "SVR03":
directory = @"\\SVR03\Prod");
break;
default:
throw new ArgumentOutOfRangeException();
}
DirectoryInfo di = null;
try
{
di = new DirectoryInfo(directory);
}
catch(Exception ex)
{
Console.WriteLine(ex.Message);
yield break;
}
foreach(var fi in di.EnumerateFiles(pattern))
yield return fi;
}
先谢谢
答案 0 :(得分:2)
您可以为正在使用的EnumerateFiles方法提供相同的SearchOption参数:
foreach(var fi in di.EnumerateFiles(pattern, SearchOption.AllDirectories))
yield return fi;