gpt4 book ai didi

c# - 如何读取给定目标中包含主文件的所有子目录

转载 作者:太空宇宙 更新时间:2023-11-03 18:43:56 27 4
gpt4 key购买 nike

我有问题。

我的问题是读取给定目的地中包含主文件的所有子目录。

我可以读取子目录,但我正在创建一个只读取给定目录的项目,该目录应包含目录中的主文件。

在给定的目录中应该有一个名为主文件的文件。

我想编写代码,如果给定目录中不包含任何主文件,它应该跳转到另一个目录。

我的源码目录是@"C:\test.

@"C:\test"里面有很多文件夹和子文件夹。

测试目录包含“C:\test\test1\test2\test3。在此路径中,test3 文件夹包含主文件 test1,而 test2 不包含。

我想写这样的代码,

            MLMReader Reader = new MLMReader();
Reader.OpenDirectory(@"C:\test");
if (!File.Exists(test + "\\Master"))
{
//i want to loop the "C"\\" and if test1 does not contain
// Master File then jump to another directory test2, if
//test2 directory contain Master File then the work should
// continue after finishing go to test3
}

有什么办法吗。对我的问题有任何建议。

最佳答案

我还没有测试过,但我很确定以下方法会起作用:

string[] paths = Directory.GetFiles(dirPath, "MasterFile", SearchOption.AllDirectories);

然后,如果您想遍历所有 MasterFile,则可以对结果数组执行 foreach。或者,如果您只关心第一个结果,那么它只是 paths[0] —— 当然,这意味着它会做一些额外的工作来寻找所有匹配的路径。而且您可能不需要检查空数组,因为越界索引将指示没有 MasterFile(除非您想捕获它然后重新抛出文件未找到异常或其他异常)。

关于c# - 如何读取给定目标中包含主文件的所有子目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6198274/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com