c# - 我想选择一个所需的文件夹,我希望它有条件地自动搜索该目录中的所有其他文件夹 C#
问题描述
所以这是我要选择的 文件夹:使用 FBD 选择的文件夹
在该 BackPath 文件夹中还有 7 个其他日期文件夹,如图所示: 所选文件夹中的日期文件夹
在每个已注明日期的文件夹中还有两个文件夹,分别命名为“In”和“Out”。
我想要做的只是选择 BackPath 文件夹,然后当我运行我的导入方法时,我希望它搜索每个过时的文件夹,只查看每个文件夹中的“Out”文件夹并忽略每个“In”文件夹。
这是我的 chooseInputFolder 方法:
private void ChooseInputFolder()
{
try
{
FolderBrowserDialog fbd = new FolderBrowserDialog();
fbd.Description = "Please Select An Input Path";
fbd.SelectedPath = @"C:\";
if (fbd.ShowDialog() == DialogResult.OK)
{
tbInputPath.Text = fbd.SelectedPath;
}
}
catch (Exception ex)
{
MessageBox.Show("Error Occured While Trying To Populate Combo Boxes : " + ex.Message);
}
}
这是我在所选目录中查找的 foreach 循环:
foreach (var files in Directory.GetFiles(strPath))
解决方案
所以我设法通过实现以下代码来解决这个问题:
foreach (string subDir1 in Directory.GetDirectories(strPath))
{
foreach (string subDir2 in Directory.GetDirectories(subDir1))
{
foreach (var files in Directory.GetFiles(subDir2))
{
if(subDir2.Contains("In"))
{
//IMPORT FILES METHOD GOES HERE
}
else
{
continue;
}
}
}
}
推荐阅读
- python - 具有多个条件的 df.loc
- python - 如何将文字值传递给节点?
- c# - 如何以不同的形式使用 1 个列表?
- c# - 将佳能实时取景图像旋转 180°
- c++ - 将概念传递给函数
- javascript - 角度删除 - API 未收到调用
- java - 无法使用 Netbeans 更改 Java JLabel 背景颜色
- javascript - Javascript CryptoJS v3.1.2 AES.encrypt 和 C# AesManaged 输出对于相同的输入不同
- user-agent - Microsoft 团队用户代理
- php - 为什么获取请求在 php 中没有响应任何内容