如何遍历c#.net目录中的所有文件?

时间:2010-11-23 09:10:11

标签: c# .net

我想获取文件夹及其子文件夹中的文件。以下代码无法获取其子文件夹中的文件:

string[] files = Directory.GetFiles(txtFolderPath.Text, "*ProfileHandler.cs");

任何人都可以告诉我如何在c#.net?

中实现这一点

3 个答案:

答案 0 :(得分:173)

string[] files = 
    Directory.GetFiles(txtPath.Text, "*ProfileHandler.cs", SearchOption.AllDirectories);

最后一个参数正好影响你所指的内容。对于包含在子文件夹中的每个文件,将其设置为 AllDirectories ,如果您只想搜索给定的目录而不是子文件夹,则将其设置为 TopDirectoryOnly

有关详细信息,请参阅MDSN:https://msdn.microsoft.com/en-us/library/ms143316(v=vs.110).aspx

答案 1 :(得分:2)

尝试以下代码

Directory.GetFiles(txtFolderPath.Text, "*ProfileHandler.cs",SearchOption.AllDirectories)

答案 2 :(得分:1)

你可以看一下这个显示Deep Folder Copy的页面,它使用递归方式迭代文件,并有一些非常好的技巧,比如过滤技术等。

http://www.codeproject.com/Tips/512208/Folder-Directory-Deep-Copy-including-sub-directori