VB.Net - 文件处理
Afileis是存储在具有特定名称和目录路径的磁盘中的数据的集合。 当打开文件进行读取或写入时,它变为astream。
流基本上是通过通信路径的字节序列。 有两个主要流:输入流和输出流。 输入流用于从文件读取数据(读取操作)和输出流用于写入文件(写入操作)。
VB.Net I / O类
System.IO命名空间具有用于对文件执行各种操作的各种类,例如创建和删除文件,读取或写入文件,关闭文件等。
下表显示了System.IO命名空间中一些常用的非抽象类:
I / O类 | 描述 |
---|---|
BinaryReader | 读取二进制流的基本数据。 |
BinaryWriter | 以二进制格式写入原始数据。 |
BufferedStream | 对于字节流的临时存储。 |
Directory | 有助于操纵的目录结构。 |
DirectoryInfo | 用于对目录进行操作。 |
DriveInfo | 提供了驱动器的信息。 |
File | 有助于处理文件。 |
FileInfo | 用于对文件执行操作。 |
FileStream | 用于读,写在文件中的任何位置。 |
MemoryStream | 用于存储在存储器流传输数据的随机访问。 |
Path | 在执行路径信息的操作。 |
StreamReader | 用于从字节流读取字符。 |
StreamWriter | 用于写入字符流。 |
StringReader | 用于从字符串缓冲区中读取。 |
StringWriter | 用于写入字符串缓冲区。 |
FileStream类
System.IO命名空间中的FileStream类有助于读取,写入和关闭文件。 此类派生自抽象类Stream。
您需要创建一个FileStream对象来创建一个新文件或打开一个现有文件。 创建一个FileStream对象的语法如下:
Dim <object_name> As FileStream = New FileStream(<file_name>, <FileMode Enumerator>, <FileAccess Enumerator>,
<FileShare Enumerator>)
例如,为创建FileStream对象读取文件namedsample.txt:
Dim f1 As FileStream = New FileStream("sample.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite)
参数 | 描述 |
---|---|
FileMode | FileModeenumerator定义了打开文件的各种方法。 FileMode枚举器的成员是: Append:它打开一个现有文件,并将光标放在文件的末尾,或创建文件,如果该文件不存在。 Create:创建一个新的文件。 CreateNew:它指定操作系统应该创建一个新文件。 Open:它打开一个现有文件。 OpenOrCreate:它指定操作系统它应该打开一个文件,如果它存在,否则应该创建一个新文件。 Truncate:它打开一个现有文件,并将其大小截断为零字节。 |
FileAccess | FileAccessenumerators有成员:Read,ReadWriteandWrite。 |
FileShare | FileShareenumerators有以下成员: Inheritable:它允许一个文件句柄传递继承子进程 None:它拒绝当前文件的共享 Read:它可以打开文件进行读取 ReadWrite:它允许打开文件进行读取和写入 Write:它允许打开写入文件 |
Append
:它打开一个现有文件,并将光标放在文件的末尾,或创建文件,如果该文件不存在。
FileAccess FileAccessenumerators有成员:Read,ReadWriteandWrite。 FileShare FileShareenumerators有以下成员:
Inheritable:
它允许一个文件句柄传递继承子进程
示例:
下面的程序演示使用FileStream
类:
Imports System.IO
Module fileProg
Sub Main()
Dim f1 As FileStream = New FileStream("sample.txt", _
FileMode.OpenOrCreate, FileAccess.ReadWrite)
Dim i As Integer
For i = 0 To 20
f1.WriteByte(CByte(i))
Next i
f1.Position = 0
For i = 0 To 20
Console.Write("{0} ", f1.ReadByte())
Next i
f1.Close()
Console.ReadKey()
End Sub
End Module
当上述代码被编译和执行时,它产生了以下结果:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 -1
VB.Net中的高级文件操作
上面的示例在VB.Net中提供了简单的文件操作。 然而,为了利用System.IO类的巨大能力,你需要知道这些类的常用属性和方法。
我们将讨论这些类以及它们在以下部分中执行的操作。 请点击提供的链接以获取各个部分:
主题和说明 |
---|
Reading from and Writing into Text filesIt involves reading from and writing into text files. TheStreamReaderandStreamWriterclasses help to accomplish it.它涉及从文本文件读取和写入。 TheStreamReaderandStreamWriterclasses有助于完成它。 |
Reading from and Writing into Binary filesIt involves reading from and writing into binary files. TheBinaryReaderandBinaryWriterclasses help to accomplish this.它涉及从二进制文件读取和写入。 二进制Reader和BinaryWriterclasses有助于完成这一任务。 |
Manipulating the Windows file systemIt gives a VB.Net programmer the ability to browse and locate Windows files and directories.它给了VB.Net程序员浏览和定位Windows文件和目录的能力。 |