C#目录操作
前面我们介绍了 C# 中文件的读写操作,本节我们来看一下 C# 中有关目录的操作,C# 中允许您使用各种目录和文件相关的类来操作目录和文件,比如 DirectoryInfo 类和 FileInfo 类。
下表列出了 DirectoryInfo 类中一些常用的属性:
下表列出了 DirectoryInfo 类中一些常用的方法:
完整的方法以及属性介绍,请查阅 C# 官方文档。
下表列出了 FileInfo 类中一些常用的属性:
下表列出了 FileInfo 类中一些常用的方法:
完整的方法以及属性介绍,请查阅 C# 官方文档。
【示例】使用 DirectoryInfo 类获取目录的信息。
DirectoryInfo 类
DirectoryInfo 类派生自 FileSystemInfo 类,其中提供了各种用于创建、移动、浏览目录和子目录的方法。需要注意的是,该类不能被继承。下表列出了 DirectoryInfo 类中一些常用的属性:
| 属性 | 描述 |
|---|---|
| Attributes | 获取当前文件或目录的属性 |
| CreationTime | 获取当前文件或目录的创建时间 |
| Exists | 获取一个表示目录是否存在的布尔值 |
| Extension | 获取表示文件存在的字符串 |
| FullName | 获取目录或文件的完整路径 |
| LastAccessTime | 获取当前文件或目录最后被访问的时间 |
| Name | 获取该 DirectoryInfo 实例的名称 |
下表列出了 DirectoryInfo 类中一些常用的方法:
| 方法 | 描述 |
|---|---|
| public void Create() | 创建一个目录 |
| public DirectoryInfo CreateSubdirectory(string path) | 在指定的路径上创建子目录,指定的路径可以是相对于 DirectoryInfo 类的实例的路径 |
| public override void Delete() | 如果为空的,则删除该 DirectoryInfo |
| public DirectoryInfo[] GetDirectories() | 返回当前目录的子目录 |
| public FileInfo[] GetFiles() | 从当前目录返回文件列表 |
完整的方法以及属性介绍,请查阅 C# 官方文档。
FileInfo 类
FileInfo 类派生自 FileSystemInfo 类,其中提供了用于创建、复制、删除、移动、打开文件的属性和方法。与 DirectoryInfo 类相同,FileInfo 类也不能被继承。下表列出了 FileInfo 类中一些常用的属性:
| 属性 | 描述 |
|---|---|
| Attributes | 获取当前文件的属性 |
| CreationTime | 获取当前文件的创建时间 |
| Directory | 获取文件所属目录的一个实例 |
| Exists | 获取一个表示文件是否存在的布尔值 |
| Extension | 获取表示文件存在的字符串 |
| FullName | 获取文件的完整路径 |
| LastAccessTime | 获取当前文件最后被访问的时间 |
| LastWriteTime | 获取文件最后被写入的时间 |
| Length | 获取当前文件的大小,以字节为单位 |
| Name | 获取文件的名称 |
下表列出了 FileInfo 类中一些常用的方法:
| 方法 | 描述 |
|---|---|
| public StreamWriter AppendText() | 创建一个 StreamWriter,追加文本到由 FileInfo 的实例表示的文件中 |
| public FileStream Create() | 创建一个文件 |
| public override void Delete() | 永久删除一个文件 |
| public void MoveTo(string destFileName) | 移动一个指定的文件到一个新的位置,提供选项来指定新的文件名 |
| public FileStream Open(FileMode mode) | 以指定的模式打开一个文件 |
| public FileStream Open(FileMode mode,FileAccess access) | 以指定的模式,使用 read、write 或 read/write 访问,来打开一个文件 |
| public FileStream Open(FileMode mode,FileAccess access,FileShare share) | 以指定的模式,使用 read、write 或 read/write 访问,以及指定的分享选项,来打开一个文件 |
| public FileStream OpenRead() | 创建一个只读的 FileStream |
| public FileStream OpenWrite() | 创建一个只写的 FileStream |
完整的方法以及属性介绍,请查阅 C# 官方文档。
【示例】使用 DirectoryInfo 类获取目录的信息。
using System;
using System.IO;
namespace c.biancheng.net
{
class Demo
{
static void Main(string[] args)
{
// 创建一个 DirectoryInfo 对象
DirectoryInfo mydir = new DirectoryInfo(@"f:\code");
// 获取目录中的文件以及它们的名称和大小
FileInfo[] f = mydir.GetFiles();
foreach (FileInfo file in f)
{
Console.WriteLine("文件名称:{0} 大小:{1}", file.Name, file.Length);
}
Console.ReadKey();
}
}
}
运行结果如下:
文件名称:demo.cs 大小:592
文件名称:demo.exe 大小:4096
文件名称:demo.txt 大小:54
文件名称:mydata 大小:30
文件名称:test.txt 大小:50
ICP备案:
公安联网备案: