【深入浅出C#】章节 7: 文件和输入输出操作:文件读写和流操作
发布人:shili8
发布时间:2025-02-17 19:09
阅读次数:0
**深入浅出 C#**
**第7 章:文件和输入输出操作**
在前面的章节中,我们已经学习了如何使用 C# 来创建、管理和操纵数据。然而,实际的应用程序往往需要与外部世界进行交互,这其中包括读取和写入文件。这一章将深入浅出地介绍 C# 中的文件和输入输出操作。
**7.1 文件读写**
在 C# 中,文件读写是通过 `FileStream` 类来实现的。下面是一个简单的例子:
csharpusing System; using System.IO; class FileReadWriteExample{ static void Main(string[] args) { // 创建一个新的文本文件 string filePath = "example.txt"; using (StreamWriter writer = new StreamWriter(filePath)) { writer.WriteLine("Hello, World!"); } //读取文件内容 using (StreamReader reader = new StreamReader(filePath)) { Console.WriteLine(reader.ReadToEnd()); } } }
在这个例子中,我们首先创建一个新的文本文件 `example.txt`,然后使用 `StreamWriter` 将 "Hello, World!" 写入该文件。接着,我们使用 `StreamReader`读取该文件的内容,并将其打印到控制台。
**7.2 流操作**
流是 C# 中用于读写数据的一种抽象概念。它提供了一种高效、灵活的方式来处理大型数据集。在前面的例子中,我们已经使用了 `StreamReader` 和 `StreamWriter` 来读写文件。下面是一个更复杂的例子:
csharpusing System; using System.IO; class StreamExample{ static void Main(string[] args) { // 创建一个新的文本文件 string filePath = "example.txt"; // 使用 BinaryReader 和 BinaryWriter 来读写二进制数据 using (FileStream fileStream = new FileStream(filePath, FileMode.Create)) { using (BinaryWriter writer = new BinaryWriter(fileStream)) { writer.Write("Hello, World!".ToCharArray()); } using (BinaryReader reader = new BinaryReader(fileStream)) { Console.WriteLine(reader.ReadString()); } } } }
在这个例子中,我们使用 `FileStream` 来读写二进制数据。我们首先使用 `BinaryWriter` 将 "Hello, World!" 写入文件,然后使用 `BinaryReader`读取该文件的内容。
**7.3 文件属性**
除了读写文件之外,C# 还提供了一些方法来获取和设置文件的属性。例如,我们可以使用 `File.GetAttributes()` 来获取一个文件的属性:
csharpusing System; using System.IO; class FileAttributeExample{ static void Main(string[] args) { string filePath = "example.txt"; FileAttributes attributes = File.GetAttributes(filePath); Console.WriteLine(attributes); } }
在这个例子中,我们使用 `File.GetAttributes()` 来获取一个文件的属性,然后将其打印到控制台。
**7.4 文件夹操作**
除了文件之外,C# 还提供了一些方法来处理文件夹。例如,我们可以使用 `Directory.CreateDirectory()` 来创建一个新的文件夹:
csharpusing System; using System.IO; class DirectoryExample{ static void Main(string[] args) { string directoryPath = "example"; Directory.CreateDirectory(directoryPath); } }
在这个例子中,我们使用 `Directory.CreateDirectory()` 来创建一个新的文件夹。
**7.5 总结**
在这一章中,我们学习了如何使用 C# 来读写文件和流操作。我们还学习了如何获取和设置文件的属性,以及如何处理文件夹。这些知识对于实际的应用程序开发是非常重要的。