C# 属性

C# 抽象

C# 字符串

C# 泛型

C# 杂项

C# 新特性

C# DirectoryInfo 目录信息类

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

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

C# DirectoryInfo 语法

句法 (Syntax)

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

C# DirectoryInfo 构造函数

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

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

C# DirectoryInfo 属性

下表包含 DirectoryInfo 类的属性。

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

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()它用于获取当前实例的类型。
MoveTo(String)它用于将 DirectoryInfo 实例及其内容移动到新路径。
Refresh()它用于刷新对象的状态。
SetAccessControl(DirectorySecurity)它用于设置由 DirectorySecurity 对象描述的访问控制列表 (ACL) 条目。
ToString()它返回用户传递的原始路径。

C# DirectoryInfo 示例

在以下示例中,我们通过指定目录路径来创建javatpoint目录。

例子 (Example)

using System;  
using System.IO;  
namespace CSharpProgram  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            // Provide directory name with complete location.  
            DirectoryInfo directory = new DirectoryInfo(@"F:\javatpoint");  
            try  
            {  
                // Check, directory exist or not.  
                if (directory.Exists)  
                {  
                    Console.WriteLine("Directory already exist.");  
                    return;  
                }  
                // Creating a new directory.  
                directory.Create();  
                Console.WriteLine("The directory is created successfully.");  
            }  
            catch (Exception e)  
            {  
                Console.WriteLine("Directory not created: {0}", e.ToString());  
            }  
        }  
    }  
}

输出:

目录创建成功。

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

CSharp 目录信息 1

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


C# DirectoryInfo 示例:删除目录

例子 (Example)

using System;  
using System.IO;  
namespace CSharpProgram  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            // Providing directory name with complete location.  
            DirectoryInfo directory = new DirectoryInfo(@"F:\javatpoint");  
            try  
            {  
                // Deleting directory  
                directory.Delete();  
                Console.WriteLine("The directory is deleted successfully.");  
            }  
            catch (Exception e)  
            {  
                Console.WriteLine("Something went wrong: {0}", e.ToString());  
            }  
        }  
    }  
}

输出:

目录删除成功。

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


  • 使用社交账号登录,本站支持
全部评论(0)