通过指定路径訪问路径下的文件。在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. File(IO流)

    import java.io.File; import java.io.IOException; import org.junit.Test; /** *java.io.File类 *1.凡是与输入输 ...

  2. POJ 3683 Priest John's Busiest Day(2-SAT+方案输出)

    Priest John's Busiest Day Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 10010   Accep ...

  3. 如何清除全部的NSUserDefaults储存的数据。

    今天做项目遇到,如何清除全部的NSUserDefaults储存的数据. 方法1:找到所有的key然后remove掉 代码: [objc] view plain copy /** * 清除所有的存储本地 ...

  4. Linux下常用的命令记录

    本文章记录我在linux系统下常用或有用的系统级命令,包括软硬件查看.修改命令,有CPU.内存.硬盘.网络.系统管理等命令.但本文不打算介绍生僻命令,也不介绍各个linux发行版下的特有命令,且以后会 ...

  5. BZOJ 4766: 文艺计算姬

    4766: 文艺计算姬 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 456  Solved: 239[Submit][Status][Discuss] ...

  6. POJ3687 Labeling Balls

    Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 13645   Accepted: 3955 Description Wind ...

  7. [LeetCode] String to Integer (atoi) 字符串

    Implement atoi to convert a string to an integer. Hint: Carefully consider all possible input cases. ...

  8. [LeetCode] Letter Combinations of a Phone Number 回溯

    Given a digit string, return all possible letter combinations that the number could represent. A map ...

  9. 各种版本QT下载地址与VS2013+QT5.3.1环境搭建过程(转)

    原文转自 http://blog.csdn.net/baidu_34678439/article/details/54586058 1. 所有Qt版本下载地址: http://download.qt. ...

  10. 获取当前应用程序实例(instance:HINSTANCE)(转)

    if using MFC AfxGetInstanceHandle(). For console programs, call GetConsoleWindow() to get the HWND t ...