VB.NET语言 文件流 FileStream 基本操作?

VB.NET阿木 发布于 2025-05-28 15 次阅读


VB.NET 文件流(FileStream)基本操作详解

在VB.NET中,文件流(FileStream)是用于读写文件的一种类,它提供了对文件内容的直接访问。通过使用FileStream,我们可以对文件进行读取、写入、追加等操作。本文将围绕FileStream的基本操作,详细讲解如何在VB.NET中实现这些功能。

文件流(FileStream)是.NET Framework中用于处理文件输入/输出的类。它提供了对文件内容的直接访问,允许我们以字节的形式读写文件。FileStream类是System.IO命名空间的一部分,因此在使用之前需要引入该命名空间。

文件流的基本操作

1. 创建FileStream对象

要使用FileStream,首先需要创建一个FileStream对象。这可以通过以下方式实现:

vb.net
Imports System.IO

Module Module1
Sub Main()
' 创建FileStream对象
Dim fs As New FileStream("example.txt", FileMode.Create, FileAccess.Write)
' ... 其他操作 ...
' 关闭FileStream对象
fs.Close()
End Sub
End Module

在上面的代码中,我们创建了一个名为`example.txt`的文件,并指定了`FileMode.Create`和`FileAccess.Write`参数。`FileMode.Create`表示如果文件不存在则创建,如果存在则覆盖;`FileAccess.Write`表示允许对文件进行写入操作。

2. 写入数据到文件

使用FileStream对象的`Write`方法可以将数据写入文件。以下是一个示例:

vb.net
Imports System.IO

Module Module1
Sub Main()
' 创建FileStream对象
Dim fs As New FileStream("example.txt", FileMode.Create, FileAccess.Write)
' 写入数据到文件
Dim data As Byte() = Encoding.UTF8.GetBytes("Hello, World!")
fs.Write(data, 0, data.Length)
' 关闭FileStream对象
fs.Close()
End Sub
End Module

在上面的代码中,我们首先将字符串"Hello, World!"转换为字节序列,然后使用`Write`方法将其写入文件。

3. 读取数据从文件

要从文件中读取数据,可以使用FileStream对象的`Read`方法。以下是一个示例:

vb.net
Imports System.IO

Module Module1
Sub Main()
' 创建FileStream对象
Dim fs As New FileStream("example.txt", FileMode.Open, FileAccess.Read)
' 读取数据从文件
Dim buffer(1023) As Byte
Dim bytesRead As Integer = fs.Read(buffer, 0, buffer.Length)
' 将读取的字节转换为字符串
Dim data As String = Encoding.UTF8.GetString(buffer, 0, bytesRead)
Console.WriteLine(data)
' 关闭FileStream对象
fs.Close()
End Sub
End Module

在上面的代码中,我们使用`Read`方法从文件中读取数据,并将其存储在`buffer`数组中。然后,我们将读取的字节转换为字符串并输出到控制台。

4. 追加数据到文件

如果需要在文件末尾追加数据,可以使用`FileMode.Append`参数创建FileStream对象。以下是一个示例:

vb.net
Imports System.IO

Module Module1
Sub Main()
' 创建FileStream对象
Dim fs As New FileStream("example.txt", FileMode.Append, FileAccess.Write)
' 追加数据到文件
Dim data As Byte() = Encoding.UTF8.GetBytes("This is an appended line.")
fs.Write(data, 0, data.Length)
' 关闭FileStream对象
fs.Close()
End Sub
End Module

在上面的代码中,我们使用`FileMode.Append`参数创建FileStream对象,这样每次写入数据时都会在文件末尾追加。

5. 使用StreamReader和StreamWriter

对于文本文件的读写,可以使用StreamReader和StreamWriter类,它们是FileStream的包装类,提供了更方便的文本读写功能。以下是一个示例:

vb.net
Imports System.IO

Module Module1
Sub Main()
' 创建StreamWriter对象
Dim sw As New StreamWriter("example.txt", True)
' 写入文本到文件
sw.WriteLine("Hello, World!")
sw.WriteLine("This is a new line.")
' 关闭StreamWriter对象
sw.Close()

' 创建StreamReader对象
Dim sr As New StreamReader("example.txt")
' 读取文本从文件
Dim line As String
While Not sr.EndOfStream
line = sr.ReadLine()
Console.WriteLine(line)
End While
' 关闭StreamReader对象
sr.Close()
End Sub
End Module

在上面的代码中,我们使用StreamWriter将文本写入文件,然后使用StreamReader从文件中读取文本。

总结

本文详细介绍了VB.NET中FileStream的基本操作,包括创建、写入、读取、追加数据以及使用StreamReader和StreamWriter进行文本读写。通过掌握这些操作,我们可以轻松地在VB.NET中处理文件输入/输出。在实际开发中,合理运用FileStream类可以有效地提高文件操作的性能和效率。