在 C# 中操作文件系统:初学者完整指南

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

在 C# 中操作文件系统:面向初学者



操作文件系统是任何开发人员的关键技能之一。C# (.NET) 提供了强大的工具来创建、读取、写入和删除文件及目录。在本文中,我们将介绍文件系统的基本操作,这些操作对新手和经验丰富的程序员都很有用。所有示例均使用 C# 编写,并使用了 System.IO 命名空间。



System.IO 命名空间基础



System.IO 命名空间包含了所有用于与文件系统交互的核心类。要开始使用,请在文件开头添加以下指令:



using System.IO;using System; // 用于 Console 和其他基本操作


我们将使用的主要类:

  • File — 用于文件操作的静态方法(创建、复制、删除)。
  • FileInfo — 用于获取特定文件信息的实例类。
  • Directory — 用于文件夹操作的静态方法。
  • DirectoryInfo — 用于目录信息的实例类。
  • Path — 用于路径处理的实用工具。


让我们在实践中了解每个方面。



创建并写入文件



创建文件并写入文本的最简单方法是使用 File.WriteAllText 方法。它会创建文件(或覆盖现有文件)并写入字符串。



string path = @"C:\\Temp\\example.txt";string content = "你好,世界!这是一个测试文件。";

File.WriteAllText(path, content);Console.WriteLine("文件已创建并写入。");


如果需要写入多行,请使用 File.WriteAllLines:



string[] lines = { "第一行", "第二行", "第三行" };File.WriteAllLines(path, lines);


要将数据追加到现有文件末尾,请使用 File.AppendAllText:



File.AppendAllText(path, "追加的行。");


从文件读取数据



读取文件同样直观。File.ReadAllText 方法将整个内容作为单个字符串返回:



string readContent = File.ReadAllText(path);Console.WriteLine("文件内容:");Console.WriteLine(readContent);


如果文件由多行组成,使用 File.ReadAllLines 更方便,它会返回一个字符串数组:



string[] readLines = File.ReadAllLines(path);foreach (string line in readLines){    Console.WriteLine(line);}


对于大文件,最好使用 StreamReader 进行流式读取,以避免将整个文件加载到内存中:



using (StreamReader reader = new StreamReader(path)){    string line;    while ((line = reader.ReadLine()) != null)    {        Console.WriteLine(line);    }}


操作文件夹(目录)



创建、检查存在性和删除文件夹是常见任务。以下是使用 Directory 类的方法:



string dirPath = @"C:\\Temp\\MyFolder";

// 检查是否存在if (!Directory.Exists(dirPath)){ Directory.CreateDirectory(dirPath); Console.WriteLine("文件夹已创建。");}else{ Console.WriteLine("文件夹已存在。");}

// 删除文件夹(如果为空)if (Directory.Exists(dirPath)){ Directory.Delete(dirPath); Console.WriteLine("文件夹已删除。");}


要获取文件夹中的文件列表,请使用 Directory.GetFiles:



string[] files = Directory.GetFiles(@"C:\\Temp");foreach (string file in files){    Console.WriteLine(file);}


类似地,对于子

博客

书籍推荐