DirectoryInfo 类能创建该类的实例,通过类的实例访问类成员。
DirectoryInfo 类提供了一个构造方法,语法形式如下。
DirectoryInfo(string path)
在这里 path 参数用于指定文件的目录,即路径。
例如创建路径为 D 盘中的 test 文件夹的实例,代码如下。
DirectoryInfo directoryInfo = new DirectoryInfo(“D:\test”);
需要注意的是路径中如果使用 \,要使用转义字符来表示,即 \;或者在路径中将 \ 字符换成 /。
DirectoryInfo 类中常用的属性和方法如下表所示。
属性或方法 作用
Exists 只读属性,获取指示目录是否存在的值
Name 只读属性,获取 Directorylnfo 实例的目录名称
Parent 只读属性,获取指定的子目录的父目录
Root 只读属性,获取目录的根部分
void Create() 创建目录
DirectoryInfo CreateSubdirectory(string path) 在指定路径上创建一个或多个子目录
void Delete() 如果目录中为空,则将目录删除
void Delete(bool recursive) 指定是否删除子目录和文件,如果 recursive 参数的值为 True,则删除,否则不删除
IEnumerable EnumerateDirectories() 返回当前目录中目录信息的可枚举集合
IEnumerable EnumerateDirectories(string searchPattern) 返回与指定的搜索模式匹配的目录信息的可枚举集合
IEnumerable EnumerateFiles() 返回当前目录中的文件信息的可枚举集合
IEnumerable EnumerateFiles(string searchPattern) 返回与搜索模式匹配的文件信息的可枚举集合
IEnumerable EnumerateFileSystemInfos() 返回当前目录中的文件系统信息的可枚举集合
IEnumerable EnumerateFileSystemInfos(string searchPattern) 返回与指定的搜索模式匹配的文件系统信息的可枚举集合
DirectoryInfo[] GetDirectories() 返回当前目录的子目录
DirectoryInfo[] GetDirectories(string searchPattern) 返回匹配给定的搜索条件的当前目录
FileInfo[] GetFiles() 返回当前目录的文件列表
FileInfo[] GetFiles(string searchPattern) 返回当前目录中与给定的搜索模式匹配的文件列表
FileSystemInfo[] GetFileSystemInfos() 返回所有文件和目录的子目录中的项
FileSystemInfo[] GetFileSystemInfos(string searchPattern) 返回与指定的搜索条件匹配的文件和目录的子目录中的项
void MoveTo(string destDirName) 移动 DirectoryInfo 实例中的目录到新的路径
下面通过实例来演示 DirectoryInfo 类的使用。
【实例 1】在 D 盘下创建文件夹 code,并在该文件夹中创建 code-1和 code-2 两个子文件夹。
根据题目要求,代码如下。
执行上面的代码即可完成相关文件夹的创建
需要注意的是,在创建文件夹时即使磁盘上存在同名文件夹也可以直接创建,不会出现异常。