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)有跳出反复执行过程的条件(递归出口)

    作者:大胖儿在努力 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    spring boot拦截器中获取request post请求中的参数
    netty与spring学习
    拦截器,过滤器,监听器
    CA 根证书不在“受信任的根证书颁发机构”存储区
    SpringBoot整合Shiro
    远程服务接口聚合带来的性能提升
    常见软件安全性漏洞及处理
    Mybatis中的CDATA标签
    idea运行固定多个模块项目
    理解Node.js事件驱动编程
  • 原文地址:https://www.cnblogs.com/cuijl/p/4493961.html
Copyright © 2011-2022 走看看