C#--Directory常用方法

  • 查看官方MSDN文档
  • 使用的方法
    • Directory.GetFiles
      • Directory.GetFiles(string path)
      • Directory.GetFiles(string path , string fileName ,SearchOption so)
    • 区分DirectoryInfo.GetFiles
    • 相似的方法
  • 简单区分Directory和DirectoryInfo

本文只记录博主自己涉及到的使用方法

查看官方MSDN文档

去查看点这里 – 官方文档

使用的方法

Directory.GetFiles

只查找文件,不查找目录

Directory.GetFiles(string path)

返回当前目录下的所有文件的绝对路径,但是不扫描子目录

目录结构

             string mypath = @"F:\TestDir";//扫描路径string[] str1 = Directory.GetFiles(mypath);//获取所有文件信息 不包含子目录中的信息for (int i = 0; i < str1.Length; i++){Console.WriteLine(str1[i]);}

执行结果

Directory.GetFiles(string path , string fileName ,SearchOption so)

返回当前目录下的名为fileName文件的绝对路径,通过SearchOption 参数判断是否需要扫描子目录。

三个参数的含义是:
path : 需要扫描的目录。
fileName : 需要查找的特定名称文件。
SearchOption: 查找操作。

SearchOption 参数:
一个是TopDirectoryOnly,表示只在当前目录下查找名为fileName的文件。
还有一个是AllDirectories,表示遍历当前目录和所有子目录去查找名为fileName的文件。

目录结构:

            string mypath = @"F:\TestDir";//遍历所有目录 查找名为a1.txt文件string[] str1 = Directory.GetFiles(mypath, "a1.txt", SearchOption.AllDirectories);for (int i = 0; i < str1.Length; i++){Console.WriteLine(str1[i]);}

执行结果:

如果将SearchOption的值设为TopDirectoryOnly,执行结果为空。因为当前目录TestDir没有a1.txt文件。

区分DirectoryInfo.GetFiles

注意这里是DirectoryInfo与前面的Directory不一样,其次它们的GetFiles的方法也有两点不同。

第一个DirectoryInfo中的GetFiles方法不是静态的,需要实例化对象才可调用。

第二个是返回类型不同,Directory.GetFiles返回的是string [],文件绝对路径的字符串集合。而DirectoryInfo.GetFiles返回的是一个File [] 对象集合。

所以如果只是查询某个文件的位置,就可以使用Directory.GetFiles。但如果需要操作文件的话还是推荐使用DirectoryInfo.GetFiles方法。

相似的方法

与之类似的还有GetDirectories方法,获取所有目录。Directory中是静态方法,并且返回的是绝对路径的字符串集合。

而DirectoryInfo中的该方法并非静态的,而且返回的是对应该目录的DirectoryInfo []集合。

简单区分Directory和DirectoryInfo

Directory和DirectoryInfo两者都是可以进行常规的目录(或者文件)操作,比如复制、移动、重命名、创建和删除等。

区别在于,Directory和DirectoryInfo中的同名方法返回值有些许不同。而且前者的方法基本都是静态方法,可以不创建对象,直接通过类名调用。而DirectoryInfo必须实例化才可调用。

还有就是Directory中的功能比DirectoryInfo更多。

C#Directory常用方法相关推荐

  1. Directory常用方法,不积硅步无以至千里

    private void button1_Click(object sender, EventArgs e) {try{//创建主测试文件夹Directory.CreateDirectory(@&qu ...

  2. 第八章节 文件操作一 (文件夹常用操作)

    1.文件夹常用操作 1.文件夹管理是操作系统的重要组成部分,主要包括移动.复制.创建.删除等操作. 2. .NET提供了Directory类和DirectoryInfo类用于对磁盘和文件夹进行常用操作 ...

  3. C#操作Excel表格,不积硅步无以至千里

    本文主要介绍一下c#来操作excel表格,主要介绍我使用的,我是使用第三方提供的函数库(NPOI)来进行excel的操作,而NPOI库函数在其官网下,我这里就不拿出来了. 1:NPOI库函数 NPOI ...

  4. C#里Directory类的常用方法

    Directory类是用于文件夹操作,可以带来很多便利. Directory是位于System.IO的,所以为了方便使用,建议先引用System.IO 在代码开头添加: using System.IO ...

  5. 3-2 文件夹类Directory的常用方法(2)

    u 实验步骤(2): 在类Form3里添加二个静态字段directory_path.directory_otherpath,都为string类型,分别代表工作目录路径和其他目录路径:双击"创 ...

  6. C#-文件操作类 Directory 109

    Directory类是一个静态类,也是在System.IO命名空间下,此类主要是用于操作目录的,此类中的方法操作会对磁盘产生实际的影响,所以操作时要小心,特别是删除方法 此次主要是学习应用Direct ...

  7. java item方法_Java常用方法

    第一章 字符串 1 . 获取字符串的长度: length() 2 . 判断字符串的前缀或后缀与已知字符串是否相同 前缀 startsWith(String s) .后缀 endsWith(String ...

  8. .NET开发中你可能会用到的常用方法总结(添加ing...)

    学习.NET有一些时间了,平日积累了一些自己认为比较实用的方法(有自己写的,也有学习别人的),可能会在不同的项目开发中使用到.分享给大家,有什么好的方法还会不断添加,个别方法你可能认为很菜,仅提供给新 ...

  9. 【C#进阶四】详细总结C#中的文件和I/O流之文件和目录(File 、 FileInfo、Directory、DirectoryInfo和Path)

    文章目录 1 Flie类 1.1常用属性.方法 1.2 代码示例(详细) 2 FileInfo 2.1 常用属性.方法 2.2 代码示例 3 Directory 类 3.1 常用方法和属性: 3.2 ...

  10. 【Node】Error: ENOENT: no such file or directory,解决方案

    在使用node文件模块中的fs.renameSync修改文件名,报错:no such file or directory, rename 'file4.txt' -> 'lastFile.txt ...

最新文章

  1. Windows Performance Toolkit
  2. Java从SFTP服务器下载文件一
  3. [资料]pthreads PHP
  4. selenium之如何使用cssSelector定位页面元素
  5. lua中的require、dofile、loadfile
  6. Kotlin之函数作为参数传递
  7. Could not autowire. No beans of 'xxxx' type found的错误提示
  8. 十六进制转换成字符串——CRC
  9. 数据结构和算法:线性表链式存储的简单实现
  10. ASP.NET20 自定义配置节学习笔记(一)
  11. 一图精通python3
  12. 早期微处理器相关的中文翻译书籍
  13. 淮安php照片,一组图 看超罕见的老淮安 看超震撼的新淮安
  14. 裴建瑞2021011195
  15. 统计学习导论之R语言应用(四):分类算法R语言代码实战
  16. 重启docker卡死问题解决systemctl start docker卡住不动
  17. 计算机网络谢希仁第七版课后习题答案(第四章)
  18. 【NOIP2017提高组正式赛】列队
  19. 标签打印机TSPL打印指令
  20. jupyter notebook OSError: [WinError 10106] 无法加载或初始化请求的服务提供程序, 错误提示解决方法

热门文章

  1. 王之泰 201771010131《面向对象程序设计(java)》第十六周学习总结
  2. 微机原理与接口技术[第三版]——第七章课后习题答案
  3. python输入名字配对情侣网名_名字匹配情侣网名
  4. ireport java 变量_iReport —— 使用 JavaBean 作为数据源
  5. SpringBoot2 学习5集成Thymeleaf
  6. linux怎么查看ip地址
  7. MacOS自带ssh+XQuartz连接OpenBSD6.5
  8. 工程经济—技术方案经济效果评价
  9. linux ubuntu 播放csf格式视频解决方案
  10. CP的mgmt_cli tool与SMC CLI用法