C# 如何让程序读取目录中的每个文件夹和每个文件夹中的每个文件
我试图创建一个程序,读取主目录中的文件夹,并为每个文件夹读取每个文件(PDF),然后移动到下一个文件夹 下面的代码是我声明字符串并以foreach语句开头的代码C# 如何让程序读取目录中的每个文件夹和每个文件夹中的每个文件,c#,C#,我试图创建一个程序,读取主目录中的文件夹,并为每个文件夹读取每个文件(PDF),然后移动到下一个文件夹 下面的代码是我声明字符串并以foreach语句开头的代码 string input_Path = @"C:\Users\username\Desktop\testinp\"; string output_Path = @"C:\Users\username\Desktop\testinp\output\"; string[] di
string input_Path = @"C:\Users\username\Desktop\testinp\";
string output_Path = @"C:\Users\username\Desktop\testinp\output\";
string[] dirs = Directory.GetDirectories(input_Path, "*", SearchOption.TopDirectoryOnly);
string[] files = Directory.GetFiles(input_Path, "*.pdf");
foreach (string dir in dirs)
{
string dirName = dir;
}
下面是一个完整的解释,以及代码示例 你知道如何做嵌套循环吗?这能回答你的问题吗?如果您只希望所有.pdf文件处于任何深度,您甚至不需要担心文件夹上的循环:
string[]files=Directory.GetFiles(topLevelDir,“*.pdf”,SearchOptions.allDirectory)代码>是的,我知道,但我一直在想,如果这是最好的方式,那么写它们的最佳方式是什么。@O'Cheezy,为什么所有pdf文件的简单列表都不适用于此?您可以使用Path.GetDirectoryName(文件)
从完整文件路径获取特定子文件夹。NET已经在接受SearchOptions.AllDirectories
的函数中实现了递归文件搜索,为什么要重新实现它呢。