递归获取指定盘符下的所有文件及文件夹
2015-05-11 11:03
337 查看
/// <summary>
/// 递归获取指定盘符下的所有文件及文件夹
/// 存在部分文件夹访问权限问题
/// </summary>
/// <param name="path">string path = @"G:\"; </param>
/// <param name="filter">string filter = "*.mp3";</param>
private static void ParseDirectory(string path, string filter)
{
//获取目录下所有文件夹路径
string[] dirs = Directory.GetDirectories(path);
if (dirs.Length == 0 )
return;
IEnumerator iter = dirs.GetEnumerator();
//遍历当前路径下文件夹路径及文件名
while (iter.MoveNext())
{
string str = (string)(iter.Current);
ParseDirectory(str, filter);
}
//获取指定文件夹中指定的内容
string[] files = Directory.GetFiles(path, filter);
if (files.Length > 0)
{
m_pathList.Add(files);
}
}
递归(recursion):程序调用自身的编程技巧。
递归满足2个条件:
1)有反复执行的过程(调用自身)
2)有跳出反复执行过程的条件(递归出口)
/// 递归获取指定盘符下的所有文件及文件夹
/// 存在部分文件夹访问权限问题
/// </summary>
/// <param name="path">string path = @"G:\"; </param>
/// <param name="filter">string filter = "*.mp3";</param>
private static void ParseDirectory(string path, string filter)
{
//获取目录下所有文件夹路径
string[] dirs = Directory.GetDirectories(path);
if (dirs.Length == 0 )
return;
IEnumerator iter = dirs.GetEnumerator();
//遍历当前路径下文件夹路径及文件名
while (iter.MoveNext())
{
string str = (string)(iter.Current);
ParseDirectory(str, filter);
}
//获取指定文件夹中指定的内容
string[] files = Directory.GetFiles(path, filter);
if (files.Length > 0)
{
m_pathList.Add(files);
}
}
递归(recursion):程序调用自身的编程技巧。
递归满足2个条件:
1)有反复执行的过程(调用自身)
2)有跳出反复执行过程的条件(递归出口)
相关文章推荐
- 递归获取指定文件夹下的所有文件
- scala 递归读取文件夹下所有的指定后缀的文件
- QTP获取指定文件夹下的所有文件
- 递归获取指定目录下所有的指定格式的文件
- C#.net获取指定文件夹下的所有jpg文件,并按文件创建时间排序
- PHP获取指定目录下的所有文件,递归到子文件夹
- 递归获取SharePoint文档库文件夹内的所有文件
- Java:<获取>、<删除>指定文件夹及里面所有文件
- C#两种方式获取指定文件夹下所有子目录及文件
- 算法积累:解决如何获取指定文件夹路径或者文件路径下所有子文件后缀为.h .m .c的文本的行数
- 递归列出指定目录内的所有文件夹和文件
- java获取指定路径下的所有文件夹和文件名称路径
- iOS小技巧 - 获取指定文件夹下的所有相对路径(包括子文件夹路径),并实现指定文件夹下的所有文件的全部移动
- asp.net 删除文件夹,指定文件夹,删除文件夹和所有文件,删除权限设置,递归删除文件夹目录及文件
- .NET中获取指定文件夹下所有文件的全路径
- 相当实用的——Java递归删除指定文件夹下的所有文件
- C#两种方式获取指定文件夹下所有子目录及文件
- 获取文件夹中指定类型的所有文件名和文件大小
- C#.NET获取指定文件夹下所有的指定类型文件
- 递归得到指定文件夹下所有.mdb文件