C#DirectoryInfo类

/ / C#DirectoryInfo类

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

DirectoryInfo类提供下面列出的构造函数、方法和属性。

C#DirectoryInfo语法

[SerializableAttribute]
[ComVisibleAttribute(true)]
public sealed class DirectoryInfo : FileSystemInfo

C#DirectoryInfo构造函数

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

ConstructorDescription
DirectoryInfo(String)它用于初始化指定路径上的DirectoryInfo类的新实例。

C#DirectoryInfo属性

下表包含DirectoryInfo类的属性。

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

C#DirectoryInfo方法

下表包含DirectoryInfo类的方法。

链接:https://www.learnfk.comhttps://www.learnfk.com/csharp/c-sharp-directoryinfo.html

来源:LearnFk无涯教程网

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

C#DirectoryInfo示例

在下面的示例中,无涯教程通过指定目录路径创建javatpoint目录。

using System;
using System.IO;
namespace CSharpProgram
{
    class Program
    {
        static void Main(string[] args)
        {
            //提供具有完整位置的目录名称。
            DirectoryInfo directory = new DirectoryInfo(@"F:\javatpoint");
            try
            {
                //检查,目录是否存在。
                if (directory.Exists)
                {
                    Console.WriteLine("Directory already exist.");
                    return;
                }
                //创建一个新目录。
                directory.Create();
                Console.WriteLine("The directory is created successfully.");
            }
            catch (Exception e)
            {
                Console.WriteLine("Directory not created: {0}", e.ToString());
            }
        }
    }
}

输出:

The directory is created successfully.

在下面的屏幕截图中,无涯教程可以看到创建了一个目录。

无涯教程网

CSharp Directory info 1

DirectoryInfo类还提供一个删除方法来删除创建的目录。在下面的程序中,无涯教程将删除在前一个程序中创建的目录。

C#DirectoryInfo示例: Deleting Directory

using System;
using System.IO;
namespace CSharpProgram
{
    class Program
    {
        static void Main(string[] args)
        {
            //提供具有完整位置的目录名称。
            DirectoryInfo directory = new DirectoryInfo(@"F:\javatpoint");
            try
            {
                //删除目录
                directory.Delete();
                Console.WriteLine("The directory is deleted successfully.");
            }
            catch (Exception e)
            {
                Console.WriteLine("Something went wrong: {0}", e.ToString());
            }
        }
    }
}

输出:

The directory is deleted successfully.

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

祝学习愉快! (发现内容有误?请选中要编辑的内容 -> 右键 -> 修改 -> 提交!帮助我们改进教程质量)

精选教程推荐

👇 以下精选教程可能对您有帮助,拓展您的技术视野

互联网人的数字化企业生存指南 -〔沈欣〕

深入C语言和程序运行原理 -〔于航〕

郭东白的架构课 -〔郭东白〕

容量保障核心技术与实战 -〔吴骏龙〕

罗剑锋的C++实战笔记 -〔罗剑锋〕

说透中台 -〔王健〕

ZooKeeper实战与源码剖析 -〔么敬国〕

Swift核心技术与实战 -〔张杰〕

大规模数据处理实战 -〔蔡元楠〕

📝 好记忆不如烂笔头,留下您的学习笔记吧!

暂无学习笔记,成为第一个分享的人吧!

您的笔记将帮助成千上万的学习者