zoukankan      html  css  js  c++  java
  • C# 遍历文件夹筛选目标文件

     有近400G的数据,首先需要写程序把目标文件标准化名称(相当耗时,各种情形,间接说明在数据采集过程中标准化操作的重要性,这样会给后续处理带来很多不必要的麻烦和消耗)

    网上找了个方法还不错,还有一种递归的写法。

    目前不再追求什么事无巨细,凡是能快速实现即可。正所谓好钢用在刀刃上。

    方法一:

    public List<string> FindFile2(string sSourcePath)
    {

    List<String> list = new List<string>();

    //遍历文件夹

    DirectoryInfo theFolder = new DirectoryInfo(sSourcePath);

    FileInfo[] thefileInfo = theFolder.GetFiles("*.BMP", SearchOption.TopDirectoryOnly);

    foreach (FileInfo NextFile in thefileInfo) //遍历文件

    list.Add(NextFile.FullName);


    //遍历子文件夹

    DirectoryInfo[] dirInfo = theFolder.GetDirectories();

    foreach (DirectoryInfo NextFolder in dirInfo)
    {

    //list.Add(NextFolder.ToString());

    FileInfo[] fileInfo = NextFolder.GetFiles("*.BMP", SearchOption.AllDirectories);

    foreach (FileInfo NextFile in fileInfo) //遍历文件

    list.Add(NextFile.FullName);
    }

    return list;
    }

    方法二:利用递归方法

    List<String> list = new List<string>();
    public List<string> FindFile(string sSourcePath )
    {
    //在指定目录及子目录下查找文件,在list中列出子目录及文件
    DirectoryInfo Dir = new DirectoryInfo(sSourcePath);
    DirectoryInfo[] DirSub = Dir.GetDirectories();
    if (DirSub.Length <= 0)
    {
    foreach (FileInfo f in Dir.GetFiles("*.*", SearchOption.TopDirectoryOnly)) //查找文件
    {
    list.Add(Dir + @"" + f.ToString());
    }
    }
    int t = 1;
    foreach (DirectoryInfo d in DirSub)//查找子目录
    {
    FindFile(Dir + @"" + d.ToString());
    list.Add(Dir + @"" + d.ToString());
    if (t == 1)
    {
    foreach (FileInfo f in Dir.GetFiles("*.*", SearchOption.TopDirectoryOnly)) //查找文件
    {
    list.Add(Dir + @"" + f.ToString());
    }
    t = t + 1;
    }
    }

    return list;

    }

  • 相关阅读:
    行列式运算法则
    神经元的数学模型
    Neural Network and Artificial Neural Network
    常见的23种设计模式
    Java 基本数据类型 及 == 与 equals 方法的区别
    MySQL经典编程问题
    MyEclipse配置tomcat报错
    MySQL 日期类型函数及使用
    MySQL dump文件导入
    MySQL 的两个特殊属性 unsigned与 zerofill
  • 原文地址:https://www.cnblogs.com/marszhw/p/9737598.html
Copyright © 2011-2022 走看看