操纵Windows文件系统(Manipulating the Windows file system)
C#允许您使用各种与目录和文件相关的类(如DirectoryInfo类和FileInfo类)来处理目录和文件。
DirectoryInfo类
DirectoryInfo类派生自FileSystemInfo类。 它有各种方法来创建,移动和浏览目录和子目录。 这个类不能被继承。
以下是DirectoryInfo类的一些常用properties -
Sr.No. | 财产和描述 |
---|---|
1 | Attributes 获取当前文件或目录的属性。 |
2 | CreationTime 获取当前文件或目录的创建时间。 |
3 | Exists 获取一个布尔值,指示目录是否存在。 |
4 | Extension 获取表示文件扩展名的字符串。 |
5 | FullName 获取目录或文件的完整路径。 |
6 | LastAccessTime 获取上次访问当前文件或目录的时间。 |
7 | Name 获取此DirectoryInfo实例的名称。 |
以下是DirectoryInfo类的一些常用methods -
Sr.No. | 方法和描述 |
---|---|
1 | public void Create() 创建一个目录。 |
2 | public DirectoryInfo CreateSubdirectory(string path) 在指定路径上创建子目录或子目录。 指定的路径可以相对于DirectoryInfo类的此实例。 |
3 | public override void Delete() 如果它为空,则删除此DirectoryInfo。 |
4 | public DirectoryInfo[] GetDirectories() 返回当前目录的子目录。 |
5 | public FileInfo[] GetFiles() 从当前目录返回文件列表。 |
有关属性和方法的完整列表,请访问Microsoft的C#文档。
FileInfo类
FileInfo类派生自FileSystemInfo类。 它具有用于创建,复制,删除,移动和打开文件的属性和实例方法,并有助于创建FileStream对象。 这个类不能被继承。
以下是FileInfo类的一些常用properties -
Sr.No. | 财产和描述 |
---|---|
1 | Attributes 获取当前文件的属性。 |
2 | CreationTime 获取当前文件的创建时间。 |
3 | Directory 获取该文件所属目录的实例。 |
4 | Exists 获取一个布尔值,指示文件是否存在。 |
5 | Extension 获取表示文件扩展名的字符串。 |
6 | FullName 获取文件的完整路径。 |
7 | LastAccessTime 获取上次访问当前文件的时间。 |
8 | LastWriteTime 获取文件的上次写入活动的时间。 |
9 | Length 获取当前文件的大小(以字节为单位)。 |
10 | Name 获取文件的名称。 |
以下是FileInfo类的一些常用methods -
Sr.No. | 方法和描述 |
---|---|
1 | public StreamWriter AppendText() 创建一个StreamWriter,将文本附加到由此FileInfo实例表示的文件中。 |
2 | public FileStream Create() 创建一个文件。 |
3 | public override void Delete() 永久删除文件。 |
4 | public void MoveTo(string destFileName) 将指定文件移动到新位置,提供指定新文件名的选项。 |
5 | public FileStream Open(FileMode mode) 以指定模式打开文件。 |
6 | public FileStream Open(FileMode mode, FileAccess access) 以指定模式打开具有读,写或读/写访问权限的文件。 |
7 | public FileStream Open(FileMode mode, FileAccess access, FileShare share) 使用读取,写入或读/写访问以及指定的共享选项以指定模式打开文件。 |
8 | public FileStream OpenRead() 创建只读FileStream |
9 | public FileStream OpenWrite() 创建只写FileStream。 |
有关属性和方法的完整列表,请访问Microsoft的C#文档。
例子 (Example)
以下示例演示了上述类的使用 -
using System;
using System.IO;
namespace WindowsFileApplication {
class Program {
static void Main(string[] args) {
//creating a DirectoryInfo object
DirectoryInfo mydir = new DirectoryInfo(@"c:\Windows");
// getting the files in the directory, their names and size
FileInfo [] f = mydir.GetFiles();
foreach (FileInfo file in f) {
Console.WriteLine("File Name: {0} Size: {1}", file.Name, file.Length);
}
Console.ReadKey();
}
}
}
编译并运行程序时,它会在Windows目录中显示文件的名称及其各自的大小。