C# DirectoryInfo 类

17 Mar 2025 | 4 分钟阅读

DirectoryInfo 类是 System.IO 命名空间的一部分。它用于创建、删除和移动目录。它提供了执行与目录和子目录相关的操作的方法。它是一个密封类,因此我们无法继承它。

DirectoryInfo 类提供了以下构造函数、方法和属性。

C# DirectoryInfo 语法

C# DirectoryInfo 构造函数

下表包含 DirectoryInfo 类的构造函数。

构造函数描述
DirectoryInfo(String)它用于在指定路径上初始化 DirectoryInfo 类的新实例。

C# DirectoryInfo 属性

下表包含 DirectoryInfo 类的属性。

属性描述
属性它用于获取或设置当前文件或目录的属性。
CreationTime它用于获取或设置当前文件或目录的创建时间。
CreationTimeUtc它用于以协调世界时 (UTC) 获取或设置创建时间。
Exists它用于获取一个值,该值指示目录是否存在。
扩展名它用于获取表示文件扩展名部分(.ext)的字符串。
FullName它用于获取目录的完整路径。
LastAccessTime它用于获取或设置当前文件或目录的最后访问时间。
LastAccessTimeUtc它用于以协调世界时 (UTC) 获取或设置当前文件或目录的最后访问时间。
LastWriteTime它用于获取或设置当前文件或目录的最后写入时间。
LastWriteTimeUtc它用于以协调世界时 (UTC) 获取或设置当前文件或目录的最后写入时间。
名称它用于获取此 DirectoryInfo 实例的名称。
Parent它用于获取指定子目录的父目录。
它用于获取目录的根部分。

C# DirectoryInfo 方法

下表包含 DirectoryInfo 类的所有方法。

方法描述
Create()它用于创建目录。
Create(DirectorySecurity)它用于使用 DirectorySecurity 对象创建目录。
CreateObjRef(Type)它用于创建一个对象,该对象包含生成代理以与远程对象通信所需的所有相关信息。
CreateSubdirectory(String)它用于在指定路径上创建子目录或子目录。
CreateSubdirectory(String,DirectorySecurity)它用于在指定路径上使用指定的安全信息创建子目录或子目录。
Delete()如果当前目录为空,则用于删除此 DirectoryInfo。
Delete(Boolean)它用于删除此 DirectoryInfo 实例,并指定是否删除子目录和文件。
EnumerateDirectories()它在当前目录中返回一个目录信息的枚举集合。
EnumerateFiles()它在当前目录中返回一个文件信息的枚举集合。
GetAccessControl()它用于获取一个 DirectorySecurity 对象,该对象封装了目录的访问控制列表 (ACL) 条目。
GetDirectories()它返回当前目录的子目录。
GetFiles()它从当前目录返回一个文件列表。
GetType()它用于获取当前实例的 Type。
MoveTo(String)它用于将 DirectoryInfo 实例及其内容移动到新路径。
Refresh()它用于刷新对象的状态。
SetAccessControl(DirectorySecurity)它用于设置由 DirectorySecurity 对象描述的访问控制列表 (ACL) 条目。
ToString()它返回用户传递的原始路径。

C# DirectoryInfo 示例

在下面的示例中,我们通过指定目录路径创建了一个名为 javatpoint 的目录。

输出

The directory is created successfully.

在下面的屏幕截图中,我们可以看到已创建了一个目录。

CSharp Directory info 1

DirectoryInfo 类还提供了一个 delete 方法来删除已创建的目录。在下面的程序中,我们删除了在上一个程序中创建的目录。


C# DirectoryInfo 示例:删除目录

输出

The directory is deleted successfully.

如果指定的目录不在该位置,则会引发 System.IO.DirectoryNotFoundException 异常。


下一主题C# 序列化