通过指定路径訪问路径下的文件。在C#的开发中主要利用了Directory类和DirectoryInfo类,简要介绍Directory类中的成员:命名空间

System.IO 命名空间

1、CreateDirectory。已重载,用于创建指定路径下的全部文件夹。

2、Delete,删除指定文件夹。

3、Exists,确定给定文件夹是否引用磁盘现有文件夹;说白点就是推断路径是否存在;

4、GetCreationTime,获取文件夹的创建时间和日期;

4、GetCurrentDirectory,获取应用程序的当前文件夹;

5、GetDirectories。获取指定文件夹下子文件夹的名称。返回值是一个字符串数组。

6、GetFiles。获取指定路径下的文件名;

7、GetFileSystemEntries,获取指定路径下全部文件和子文件夹的名称;

8、GetParent。获取指定路径的父文件夹;

9、Move,将文件或文件夹移动到新位置;

(2)简要介绍下DirectoryInfo类的成员:

1、Create,创建指定文件夹;

2、Delete,从路径中删除DirectoryInfo和其内容

3、GetDirectories,获取当前文件夹的子文件夹;

4、GetFiles。获取当前文件夹下的文件列表;返回FileInfo[]类型的数组;

5、MoveTo,将
DirectoryInfo 实例及其内容移动到新路径。

代码实现:

         /// <summary>
/// 打开文件
/// </summary>
private void bePath_Click(object sender, EventArgs e)
{
this.MenuList.Nodes.Clear();
FolderBrowserDialog folderBrowserDialog = new FolderBrowserDialog();
folderBrowserDialog.Description = "请选择文件夹:";
if (folderBrowserDialog.ShowDialog() == DialogResult.OK)
{
sPath = folderBrowserDialog.SelectedPath;
} if (!string.IsNullOrEmpty(sPath))
{
this.bePath.Text = sPath;
TreeListNode ParentNode = this.MenuList.AppendNode(new object[] { sPath }, -1);
GetSubFile(sPath, ParentNode);
GetSubRoot(sPath, ParentNode);
}
}
        /// <summary>
/// 获取路径的集合
/// </summary>
/// <param name="sPath"></param>
private void GetSubRoot(string sFilePath, TreeListNode ParentNode)
{
if (string.IsNullOrEmpty(sFilePath))
{
return;
} string[] DirectoryList = Directory.GetDirectories(sFilePath);
foreach (string sDirectory in DirectoryList)
{
ParentNode = this.MenuList.AppendNode(new object[] { sDirectory }, ParentNode);
GetSubFile(sDirectory,ParentNode);
GetSubRoot(sDirectory,ParentNode);
}
}
        /// <summary>
/// 获取路径下的文件
/// </summary>
/// <param name="sSubRootPath"></param>
/// <param name="ParentNode"></param>
private void GetSubFile(string sSubRootPath, TreeListNode ParentNode)
{
FileInfo[] ArrayileInfo; DirectoryInfo pDirectoryInfo = new DirectoryInfo(sSubRootPath);
ArrayileInfo = pDirectoryInfo.GetFiles("*.");
if (ArrayileInfo.Length < 1)
{
return;
} foreach (FileInfo pFileInfo in ArrayileInfo)
{
string sName = pFileInfo.Name;
MenuList.AppendNode(new object[] { sName }, ParentNode);
}
}


C#遍历指定路径下的目录的更多相关文章

  1. 【Lua】关于遍历指定路径下所有目录及文件

    关于Lua中如何遍历指定文件路径下的所有文件,需要用到Lua的lfs库. 首先创建一个temp.lua文件,用编辑器打开: 要使用lfs库,首先需要把lfs库加载进来 require("lf ...

  2. Python小代码_15_遍历指定路径下的所有文件和文件夹,并格式化输出文件路径文件名和文件夹名,文件大小,修改时间

    遍历指定路径下的所有文件和文件夹,并格式化输出文件路径文件名和文件夹名,文件大小,修改时间 import osimport datetime def print_tree(dir_path): for ...

  3. 指定路径下建立Access数据库并插入数据

    今天刚刚开通博客,想要把我这几天完成小任务的过程,记录下来.我从事软件开发的时间不到1年,写的不足之处,还请前辈们多多指教. 上周四也就是2016-04-14号上午,部门领导交给我一个小任务,概括来讲 ...

  4. Python获取指定路径下所有文件的绝对路径

    需求 给出制定目录(路径),获取该目录下所有文件的绝对路径: 实现 方式一: import os def get_file_path_by_name(file_dir): ''' 获取指定路径下所有文 ...

  5. 初识TypeScript:查找指定路径下的文件按类型生成json

    如果开发过node.js的话应该对js(javascript)非常熟悉,TypeScript(以下简称ts)是js的超集. 下面是ts的官网: https://www.tslang.cn/ 1.环境配 ...

  6. java监控指定路径下文件及文件夹变化

    之前用jdk7的WatchService API(java.nio.file包)来做目录下的子文件监控,后改为使用commons-io包.主要有下面几点不同:1. WatchService是采用扫描式 ...

  7. C#查找指定路径下的所有指定文件,并读取

    string path="指定路径"; string filename =“需要查找的文件名.csv"; List<string> lineStringLis ...

  8. C#实现把指定文件夹下的所有文件复制到指定路径下以及修改指定文件的后缀名

    1.实现把指定文件夹下的所有文件复制到指定路径下 public static void copyFiles(string path) { DirectoryInfo dir = new Directo ...

  9. java 压缩文件 传入文件数组,压缩文件,在指定路径下生成指定文件名的压缩文件

    /** * 传入文件数组,压缩文件,在指定路径下生成指定文件名的压缩文件 * * @param files * 文件数组 * @param strZipName * 压缩文件路径及文件名 * @thr ...

随机推荐

  1. 使用xcache加速PHP运行

    XCache 是一个开源的 opcode 缓存器/优化器, 这意味着他能够提高您服务器上的 PHP 性能. 他通过把编译 PHP 后的数据缓冲到共享内存从而避免重复的编译过程, 能够直接使用缓冲区已编 ...

  2. Spring MVC请求参数绑定

    所谓请求参数绑定,就是在控制器方法中,将请求参数绑定到方法参数上 @RequestParam 绑定单个请求参数到方法参数上 @RequestParam("id") Integer ...

  3. hashcode和equals方法

    转自https://www.cnblogs.com/keyi/p/7119825.html 一.equals方法的作用 1.默认情况(没有覆盖equals方法)下equals方法都是调用Object类 ...

  4. Python之面向对象:继承

    概念:子类继承父类的属性和方法. 一个派生类(derived class)继承基类(bass class)字段和方法.继承也允许把一个派生类的对象作为一个基类对象对待. 一.单继承 :推崇.特点和使用 ...

  5. 【06】react 之 PropsType

    React组件创建的时候,需要传入属性,我们可以使用使用PropTypes进行类型检查,您可以使用React.PropTypes在组件的道具上运行. React.PropTypes.array Rea ...

  6. 洛谷 [P3620] 数据备份

    贪心神题 首先我们发现一个显然的贪心策略,连接相邻两个写字楼总是更优. 所以本题就变成了数轴上一堆点,要选 k 个彼此不相邻的区间,使得区间长度最小 对于 10000 的数据来说,我们可以用 DP 解 ...

  7. Linux中的小括号和大括号,${}/$()/()/{}/${var:-string}/${var:=string}/${var:+string}/${var:?string}/${var%pattern}/${var#pattern}/${var%%pattern}/${var##pattern}

    简单记录一下大小括号在Linux中的用处. 1.${var},这是Linux中变量的原形.所以$var,别忘记了你的本来面目. # a= # echo $a # echo ${a} # echo ${ ...

  8. Java语法糖(一)

    概述 语法糖(Syntactic Sugar):主要作用是提高编码效率,减少编码出错的机会. 解语法糖发生在Java源码被编译成Class字节码的过程中,还原回简单的基础语法结构. 语法糖之一:泛型( ...

  9. kernel thread vs user thread

    The most important difference is they use different memory, the kernel mode thread can access any ke ...

  10. Python 文本(txt) 转换成 EXCEL(xls)

    #!/bin/env python # -*- encoding: utf-8 -*- #------------------------------------------------------- ...