📜  C#DirectoryInfo(1)

📅  最后修改于: 2023-12-03 15:30:16.637000             🧑  作者: Mango

C# DirectoryInfo

DirectoryInfo 是 C# 中用于操作文件夹的类。它提供了对文件夹的基本操作和属性。

创建 DirectoryInfo 对象

我们可以使用以下方法来创建一个 DirectoryInfo 对象:

// 1. 使用构造器
DirectoryInfo di1 = new DirectoryInfo("path/to/folder");
// 2. 使用静态方法
DirectoryInfo di2 = DirectoryInfo.Create("path/to/folder");
常见属性

以下是 DirectoryInfo 中最常用的属性:

  • FullName :返回文件夹的完整路径
  • Name :返回文件夹的名称
  • Exists :返回一个布尔值,指示指定的文件夹是否存在
  • CreationTime :获取或设置文件夹的创建时间
  • LastWriteTime :获取或设置文件夹的上次写入时间
常见方法

以下是 DirectoryInfo 中最常用的方法:

  • Create :创建一个新的文件夹
  • Delete :删除一个文件夹以及其所有内容
  • GetDirectories :获取指定文件夹中的所有子文件夹
  • GetFiles :获取指定文件夹中的所有文件
示例代码

以下是一个示例代码,用于展示 DirectoryInfo 的基本用法:

using System;
using System.IO;

namespace DirectoryInfoExample
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建一个新的文件夹
            DirectoryInfo di = new DirectoryInfo("example");

            if (di.Exists)
            {
                Console.WriteLine("文件夹已经存在!");
            }
            else
            {
                di.Create();
                Console.WriteLine("文件夹已创建!");
            }

            // 获取文件夹中的所有文件
            FileInfo[] files = di.GetFiles();
            Console.WriteLine($"文件夹中共有 {files.Length} 个文件:");

            foreach (FileInfo file in files)
            {
                Console.WriteLine($" - {file.Name}");
            }

            // 获取文件夹中的所有子文件夹
            DirectoryInfo[] subDirectories = di.GetDirectories();
            Console.WriteLine($"文件夹中共有 {subDirectories.Length} 个子文件夹:");

            foreach (DirectoryInfo subDirectory in subDirectories)
            {
                Console.WriteLine($" - {subDirectory.Name}");
            }

            // 删除文件夹以及其所有内容
            di.Delete(true);
            Console.WriteLine("文件夹已删除!");

            Console.ReadKey();
        }
    }
}