VB.NET 与 C# 文件操作文本到二进制文件的读写

一、概述

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


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

1. 文本文件写入

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

VB.NET 示例:
vbnet 复制代码
Imports System.IO

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

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

2. 文本文件读取

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

VB.NET 示例:
vbnet 复制代码
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# 示例:
csharp 复制代码
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 示例:
vbnet 复制代码
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# 示例:
csharp 复制代码
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 示例:
vbnet 复制代码
Dim binReader As New BinaryReader(File.OpenRead("c:\myfile.dat"))
str = binReader.ReadString()  ' 读取字符串
num = binReader.ReadInt32()   ' 读取整数
binReader.Close()
C# 示例:
csharp 复制代码
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# 中进行文本文件和二进制文件读写的方法,并提供了完整的代码示例和注释。希望能帮助你更好地理解文件操作的相关知识。如果有任何问题,欢迎在评论区留言讨论。

相关推荐
淡海水2 小时前
00-Unity和C#的GC剖析与对比-全篇导览
unity·c#·游戏引擎·gc
fogota3 小时前
C# `string.Join` 处理 `List<int>`
windows·c#
Behavior5 小时前
Unity 手游动态更换 App 图标 — Android 与 iOS 双端技术方案
c#·unity3d·游戏开发
周杰伦fans6 小时前
构建真正智能的CAD AI绘图代理
开发语言·人工智能·c#
UIU1149 小时前
递归算法与汉诺塔
c++·学习·算法·c#·递归
CSharp精选营15 小时前
我用 ASP.NET Core 做了个水稻病虫害检查系统
c#·毕业设计·.net core·码农刚子
唐青枫15 小时前
我用 C# 开发了一款电子发票自动整理工具
c#·.net
下页、再停留15 小时前
【C#桌面客户端系列学习-2】在原来窗口基础上打开新窗口
c#·visual studio
Behavior15 小时前
Unity 手游 iOS Deep Link 唤醒全流程:从 URL Scheme / Universal Links 到 C# 层参数投递
c#·unity3d·游戏开发
我是唐青枫15 小时前
我用 C# 开发了一款电子发票自动整理工具
c#·.net