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;

    }

  • 相关阅读:
    将 SharePoint 2010 网站集升级到 2013 (含沙盒方案)
    几款网络云存储服务的使用对比
    技术发展飞快,一日十年
    项目背景介绍
    初次接触,简单的了解需求
    用色彩区分 SharePoint 2010 Calendar 的日历项
    嘿,我这里有一个 Survey!
    博客页面在 IE 浏览器中样式混乱了(已经更换了样式)
    关于 Graphviz
    搭建使用 RTX51Tiny 的 C51 Keil 项目环境
  • 原文地址:https://www.cnblogs.com/marszhw/p/9737598.html
Copyright © 2011-2022 走看看