C#文件夹操作之Directory类和DirectoryInfo类

时间:2022-06-12 20:42:08

这次所讲的Directory类和DirectoryInfo类其实类似于上一篇博客讲的File类和FileInfo类。

在其选择使用的标准上面和之前的是一样的。

以下只列出各自的方法,其用法基本上完全跟之前讲的File类和FileInfo类一样



1.Directory类(其中所有的方法都是静态方法,类似于之前说的File)


CreateDiretory         创建指定路径中的所有目录
Delete                 删除指定的目录
Exists                 确定给定路径是否引用磁盘的现有目录
GetFiles               返回指定目录中的文件的名称
Move                   将文件或目录及其内容移到新位置
SetCurrentDirectory    将应用程序的当前工作目录设置为指定的目录
SetLastAccessTime      设置上次访问指定文件或目录的日期和时间
SetLastWriteTime       设置上次写入目录的日期和时间


2.DirectoryInfo类(类似于之前的FileInfo类)


Exists           获取指定目录是否存在的值
Extension        获取表示文件扩展名部分的字符串
FullName         获取目录或文件的完整目录
Name             获取DirectoryInfo实例的名称
Parent           获取指定子目录的父目录
Root             获取路径的根部分


(1)确定文件夹是否存在的Exists方法
Directory类-----public static void Exists(string path)
DirectoryInfo---public void Exists(get;)


(2)创建文件夹(Directory类的CreateDirectory方法和DirectoryInfo类的Create方法)
Directory类:
public static DirectoryInfo CreateDirectory(string path)
public static DirectoryInfo CreateDirectory(string path,DirectorySecurity directorySecurity)


DirectoryInfo类:
public void Create()
public void Create(DirectorySecurity directorySecurity)


(3)移动文件夹(Directory类的Move方法和Directoryinfo类的MoveTo方法)
Directory类--public static void Move(string sourceDirName,string destDirName)
DirectoryInfo类--public void MoveTo(string destDirName)


(4)删除文件夹的Delete方法
Directory类--若要移除path中的目录、子目录以及文件,则参数recursive为true!
public static void Delete(string path)
public static void Delete(string path,bool recursive)
DirectoryInfo类--
public  override void Delete()
public void Delete(bool recursive)