zoukankan      html  css  js  c++  java
  • 递归获取指定盘符下的所有文件及文件夹

        /// <summary>
            /// 递归获取指定盘符下的所有文件及文件夹
            /// 存在部分文件夹访问权限问题
            /// </summary>
            /// <param name="path">string path = @"G:"; </param>
            /// <param name="filter">string filter = "*.mp3";</param>
    1.         private static void ParseDirectory(string path, string filter)
    2.         {
    3.             //获取目录下所有文件夹路径
    4.             string[] dirs = Directory.GetDirectories(path);
    5.             if (dirs.Length == 0 )
    6.                 return;
    7.             IEnumerator iter = dirs.GetEnumerator();
    8.             //遍历当前路径下文件夹路径及文件名
    9.             while (iter.MoveNext())
    10.             {
    11.                 string str = (string)(iter.Current);
    12.                 ParseDirectory(str, filter);
    13.             }
    14.             //获取指定文件夹中指定的内容
    15.             string[] files = Directory.GetFiles(path, filter);
    16.             if (files.Length > 0)
    17.             {
    18.                 m_pathList.Add(files);
    19.             }
    20.         }
     
    递归(recursion):程序调用自身的编程技巧。

      递归满足2个条件:

        1)有反复执行的过程(调用自身)

        2)有跳出反复执行过程的条件(递归出口)

    作者:大胖儿在努力 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    C#中的Dictionary类,默认key是区分大小写的
    for循环的3个参数
    C#循环读取文件流,按行读取
    C#合并两个Dictionary的方法
    C#的Equals不区分大小写
    php的isset()和empty()区别
    css !important的作用
    mysql创建用户,并指定用户的权限(grant命令)
    解决安卓微信浏览器中location.reload 或者 location.href失效的问题
    【转】前端懒加载以及预加载
  • 原文地址:https://www.cnblogs.com/cuijl/p/4493961.html
Copyright © 2011-2022 走看看