C# DirectoryInfo类的用法(附带实例)
DirectoryInfo 类和 Directory 类之间许多方法的调用都是相同的,但是 DirectoryInfo 类没有静态方法,该类中的方法仅可以用于实例化的对象。
Directory 类是静态类,其调用需要字符串参数为每一个方法调用规定文件夹路径。因此,如果要在对象中进行单一方法调用,则可以使用静态 Directory 类。在这种情况下,静态调用速度要快一些,因为 .NET 框架不必执行实例化新对象并调用其方法。
如果要在文件夹中执行几种操作,则实例化 DirectoryInfo 对象并调用其方法的效率会更高,因为对象将在文件夹系统中引用正确的文件夹,而静态类则必须每次都寻找文件夹。
DirectoryInfo 类的常用属性及说明如下表所示。
判断文件夹是否存在时,可以使用 DirectoryInfo 类的 Exists 属性来实现,其语法格式如下:
例如,首先实例化一个 DirectoryInfo 对象,然后使用该对象调用 DirectoryInfo 类中的 Exists 属性判断 C 盘根目录下是否存在 Test 文件夹,代码如下:
Directory 类是静态类,其调用需要字符串参数为每一个方法调用规定文件夹路径。因此,如果要在对象中进行单一方法调用,则可以使用静态 Directory 类。在这种情况下,静态调用速度要快一些,因为 .NET 框架不必执行实例化新对象并调用其方法。
如果要在文件夹中执行几种操作,则实例化 DirectoryInfo 对象并调用其方法的效率会更高,因为对象将在文件夹系统中引用正确的文件夹,而静态类则必须每次都寻找文件夹。
DirectoryInfo 类的常用属性及说明如下表所示。
属性 | 说明 |
---|---|
CreationTime | 获取或设置当前 FileSystemInfo 对象的创建时间 |
Exists | 获取指示目录是否存在的值 |
Extension | 获取表示文件扩展名部分的字符串 |
FullName | 获取目录或文件的完整目录 |
LastAccessTime | 获取或设置上次访问当前文件或目录的时间 |
LastWriteTime | 获取或设置上次写入当前文件或目录的时间 |
Name | 获取 DirectoryInfo 实例的名称 |
Parent | 获取指定子目录的父目录 |
Root | 获取路径的根部分 |
判断文件夹是否存在时,可以使用 DirectoryInfo 类的 Exists 属性来实现,其语法格式如下:
public override bool Exists { get; }
例如,首先实例化一个 DirectoryInfo 对象,然后使用该对象调用 DirectoryInfo 类中的 Exists 属性判断 C 盘根目录下是否存在 Test 文件夹,代码如下:
DirectoryInfo dinfo = new DirectoryInfo("C:\\Test"); //创建文件夹对象 if (dinfo.Exists) //判断文件夹是否存在 { }