一、概述

文件操作是编程中的基础且重要的部分,无论是文本文件还是二进制文件,读写操作都极为常见。本文将以 VB.NET 和 C# 为例,详细讲解如何实现文件的创建、写入和读取,并提供完整的代码示例和注释。


二、文本文件的写入与读取

1. 文本文件写入

在 VB.NET 和 C# 中,我们使用 StreamWriter 类来写入文本文件。以下是两种语言的实现方式:

VB.NET 示例:
Imports System.IO

' 创建 StreamWriter 对象并指定文件路径
Dim writer As StreamWriter = File.CreateText("c:\myfile.txt")
' 写入一行文本
writer.WriteLine("Out to file.")
' 关闭写入器,释放资源
writer.Close()
C# 示例:
using System.IO;

// 创建 StreamWriter 对象并指定文件路径
StreamWriter writer = File.CreateText("c:\\myfile.txt");
// 写入一行文本
writer.WriteLine("Out to file.");
// 关闭写入器,释放资源
writer.Close();

2. 文本文件读取

读取文本文件通常使用 StreamReader 类,逐行读取直到文件结束。

VB.NET 示例:
Dim reader As StreamReader = File.OpenText("c:\myfile.txt")
Dim line As String = reader.ReadLine()
' 循环读取直到行内容为 Nothing(文件结束)
While Not line Is Nothing
    Console.WriteLine(line)
    line = reader.ReadLine()
End While
reader.Close()
C# 示例:
StreamReader reader = File.OpenText("c:\\myfile.txt");
string line = reader.ReadLine();
while (line != null)
{
    Console.WriteLine(line);
    line = reader.ReadLine();
}
reader.Close();

三、二进制文件的写入与读取

二进制文件适用于存储结构化数据或非文本数据,如整数、字符串等。

1. 二进制文件写入

使用 BinaryWriter 类可以方便地写入多种数据类型。

VB.NET 示例:
Dim str As String = "Text data"
Dim num As Integer = 123
' 创建 BinaryWriter 对象
Dim binWriter As New BinaryWriter(File.OpenWrite("c:\myfile.dat"))
binWriter.Write(str)  ' 写入字符串
binWriter.Write(num)  ' 写入整数
binWriter.Close()
C# 示例:
string str = "Text data";
int num = 123;
BinaryWriter binWriter = new BinaryWriter(File.OpenWrite("c:\\myfile.dat"));
binWriter.Write(str); // 写入字符串
binWriter.Write(num); // 写入整数
binWriter.Close();

2. 二进制文件读取

使用 BinaryReader 按写入顺序读取数据。

VB.NET 示例:
Dim binReader As New BinaryReader(File.OpenRead("c:\myfile.dat"))
str = binReader.ReadString()  ' 读取字符串
num = binReader.ReadInt32()   ' 读取整数
binReader.Close()
C# 示例:
BinaryReader binReader = new BinaryReader(File.OpenRead("c:\\myfile.dat"));
str = binReader.ReadString(); // 读取字符串
num = binReader.ReadInt32();  // 读取整数
binReader.Close();

四、文件操作类图(Mermaid UML)

File
+CreateText(path: string)
+OpenText(path: string)
+OpenWrite(path: string)
+OpenRead(path: string)
StreamWriter
+WriteLine(text: string)
+Close()
StreamReader
+ReadLine()
+Close()
BinaryWriter
+Write(value: string)
+Write(value: int)
+Close()
BinaryReader
+ReadString()
+ReadInt32()
+Close()

五、生词表(Vocabulary)

单词/短语 音标 词性 词根/词缀 释义 搭配 例子
StreamWriter /striːmˈraɪtər/ 名词 stream + writer 流写入器 CreateText Dim writer As StreamWriter
StreamReader /striːmˈriːdər/ 名词 stream + reader 流读取器 OpenText Dim reader As StreamReader
BinaryWriter /ˈbaɪnəriˈraɪtər/ 名词 binary + writer 二进制写入器 Write, Close New BinaryWriter(…)
BinaryReader /ˈbaɪnəriˈriːdər/ 名词 binary + reader 二进制读取器 ReadString, Close New BinaryReader(…)
WriteLine /raɪt laɪn/ 动词短语 write + line 写入一行 Console.WriteLine writer.WriteLine(“text”)
ReadLine /riːd laɪn/ 动词短语 read + line 读取一行 reader.ReadLine() line = reader.ReadLine()
Close /kloʊz/ 动词 clos- 关闭 writer.Close() reader.Close()
OpenWrite /ˈoʊpən raɪt/ 动词短语 open + write 打开写入 File.OpenWrite File.OpenWrite(“path”)
OpenRead /ˈoʊpən riːd/ 动词短语 open + read 打开读取 File.OpenRead File.OpenRead(“path”)

本文详细介绍了在 VB.NET 和 C# 中进行文本文件和二进制文件读写的方法,并提供了完整的代码示例和注释。希望能帮助你更好地理解文件操作的相关知识。如果有任何问题,欢迎在评论区留言讨论。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐