当前位置: 首页 > 编程笔记 >

C#遍历文件夹获取指定后缀名文件

吴镜
2023-03-14
本文向大家介绍C#遍历文件夹获取指定后缀名文件,包括了C#遍历文件夹获取指定后缀名文件的使用技巧和注意事项,需要的朋友参考一下

本文实例为大家分享了C#遍历文件夹获取指定后缀名文件的具体代码,供大家参考,具体内容如下

问题描述:

项目需要,要进行某文件夹下所有shp数据的读取

解决方法:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
 
 
namespace learnGDAL
{
  public partial class Form1 : Form
  {
    public Form1()
    {
      InitializeComponent();
    }
     
    
    private void button3_Click(object sender, EventArgs e)
    {
      List<FileInfo> lst = new List<FileInfo>();
      string strPath = @"E:\WORK\g1\北京市\北京市";
      List<FileInfo> lstFiles = getFile(strPath, ".shp",lst);
      foreach(FileInfo shpFile in lstFiles)
      {
        label3.Text += shpFile.FullName+"\n";
      }
    }
    /// <summary>
    /// 获得目录下所有文件或指定文件类型文件(包含所有子文件夹)
    /// </summary>
    /// <param name="path">文件夹路径</param>
    /// <param name="extName">扩展名可以多个 例如 .mp3.wma.rm</param>
    /// <returns>List<FileInfo></returns>
    public static List<FileInfo> getFile(string path, string extName, List<FileInfo> lst)
    {
      try
      {
        
        string[] dir = Directory.GetDirectories(path); //文件夹列表  
        DirectoryInfo fdir = new DirectoryInfo(path);
        FileInfo[] file = fdir.GetFiles();
        //FileInfo[] file = Directory.GetFiles(path); //文件列表  
        if (file.Length != 0 || dir.Length != 0) //当前目录文件或文件夹不为空          
        {
          foreach (FileInfo f in file) //显示当前目录所有文件  
          {
            if (extName.ToLower().IndexOf(f.Extension.ToLower()) >= 0)
            {
              lst.Add(f);
            }
          }
          foreach (string d in dir)
          {
            getFile(d, extName,lst);//递归  
          }
        }
        return lst;
      }
      catch (Exception ex)
      {
        throw ex;
      }
    }
 
    
  }
}

效果:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍python3 遍历删除特定后缀名文件的方法,包括了python3 遍历删除特定后缀名文件的方法的使用技巧和注意事项,需要的朋友参考一下 U盘中毒了,U盘内的每个文件夹内都多了一个.lnk文件,处女座又犯了,实在不能忍,就写了个脚本把所有的.lnk文件删除了。 多级目录递归删除 把这个脚本另存为rm.py,然后放到U盘根目录,cd进入到U盘根目录,然后: python rm.py 就

  • 本文向大家介绍Python获取指定文件夹下的文件名的方法,包括了Python获取指定文件夹下的文件名的方法的使用技巧和注意事项,需要的朋友参考一下 本文采用os.walk()和os.listdir()两种方法,获取指定文件夹下的文件名。 一、os.walk() 模块os中的walk()函数可以遍历文件夹下所有的文件。 该函数可以得到一个三元tupple(dirpath, dirnames, fil

  • 本文向大家介绍C#遍历文件夹后上传文件夹中所有文件错误案例分析,包括了C#遍历文件夹后上传文件夹中所有文件错误案例分析的使用技巧和注意事项,需要的朋友参考一下 asp.net是没有直接选取文件夹的控件的,我也不知道,如果大家有的话可以一起交流下。后来我想着应该有三种方法: ①先将文件夹压缩后上传服务器,然后再服务器上解压; ②获得文件夹名及目录,然后遍历文件夹下面的文件以及子文件夹,循环上传; ③

  • 问题内容: 我试图遍历并拾取目录中的文件,但是在实现它时遇到了一些麻烦。如何提取多个文件,然后将它们移动到另一个文件夹? 问题答案: 带回调的旧答案 您想要使用fs.readdir函数获取目录内容,并使用fs.rename函数实际执行重命名。如果您 需要 等待它们完成之后再运行代码,则这两个函数都具有同步版本。 我写了一个快速脚本来完成您所描述的。 在我的本地机器上测试。 更新:fs.promis

  • 本文向大家介绍PHP递归遍历指定文件夹内的文件实现方法,包括了PHP递归遍历指定文件夹内的文件实现方法的使用技巧和注意事项,需要的朋友参考一下 今天早上在地铁上看了关于文件和文件夹的一章,正好最近刚搞懂linux的文件系统,觉得对文件属性的访问跟Shell命令很像,所以想晚上来实践一下。 发现php的文件夹函数好像没有提供遍历文件夹下的所有文件(包括子目录中的文件),于是,就想自己实现一个。 在写

  • 本文向大家介绍php文件操作小结(删除指定文件/获取文件夹下的文件名/读取文件夹下图片名),包括了php文件操作小结(删除指定文件/获取文件夹下的文件名/读取文件夹下图片名)的使用技巧和注意事项,需要的朋友参考一下 本文实例分析了php文件操作的方法。分享给大家供大家参考,具体如下: 一、删除文件 unlink() 语法: int unlink(string filename); 返回值: 整数

  • 本文向大家介绍python遍历文件夹,指定遍历深度与忽略目录的方法,包括了python遍历文件夹,指定遍历深度与忽略目录的方法的使用技巧和注意事项,需要的朋友参考一下 背景 需要在文件夹中搜索某一文件,找到后返回此文件所在目录。用最常规的os.listdir()方式实现了一版,但执行时报错:递归超过最大深度。于是自己添加了点功能,之所有写此函数是为了让它适应不同的项目,因为有项目要找的文件在第一层

  • 这是一个在众多OCaml生成平台上使用的标准文件名和后缀名的参考. 源文件和目标文件 与C语言源文件、目标文件和二进制文件的对照: 用途 C 字节码 原生码 源文件 *.c *.ml *.ml 头文件1 *.h *.mli *.mli 目标文件 *.o *.cmo *.cmx2 库文件 *.a *.cma *.cmxa3 二进制程序 prog prog prog.opt4 注释 在C中,头文件用来