VB.Net - 文件處理

2023-01-31 09:46 更新

Afileis是存儲(chǔ)在具有特定名稱和目錄路徑的磁盤中的數(shù)據(jù)的集合。 當(dāng)打開文件進(jìn)行讀取或?qū)懭霑r(shí),它變?yōu)閍stream。
流基本上是通過通信路徑的字節(jié)序列。 有兩個(gè)主要流:輸入流和輸出流。 輸入流用于從文件讀取數(shù)據(jù)(讀取操作)和輸出流用于寫入文件(寫入操作)。

VB.Net I / O類

System.IO命名空間具有用于對(duì)文件執(zhí)行各種操作的各種類,例如創(chuàng)建和刪除文件,讀取或?qū)懭胛募?,關(guān)閉文件等。
下表顯示了System.IO命名空間中一些常用的非抽象類:

I / O類描述
BinaryReader讀取二進(jìn)制流的基本數(shù)據(jù)。
BinaryWriter以二進(jìn)制格式寫入原始數(shù)據(jù)。
BufferedStream對(duì)于字節(jié)流的臨時(shí)存儲(chǔ)。
Directory有助于操縱的目錄結(jié)構(gòu)。
DirectoryInfo用于對(duì)目錄進(jìn)行操作。
DriveInfo提供了驅(qū)動(dòng)器的信息。
File有助于處理文件。
FileInfo用于對(duì)文件執(zhí)行操作。
FileStream用于讀,寫在文件中的任何位置。
MemoryStream用于存儲(chǔ)在存儲(chǔ)器流傳輸數(shù)據(jù)的隨機(jī)訪問。
Path在執(zhí)行路徑信息的操作。
StreamReader用于從字節(jié)流讀取字符。
StreamWriter用于寫入字符流。
StringReader用于從字符串緩沖區(qū)中讀取。
StringWriter用于寫入字符串緩沖區(qū)。

FileStream類

System.IO命名空間中的FileStream類有助于讀取,寫入和關(guān)閉文件。 此類派生自抽象類Stream。
您需要?jiǎng)?chuàng)建一個(gè)FileStream對(duì)象來創(chuàng)建一個(gè)新文件或打開一個(gè)現(xiàn)有文件。 創(chuàng)建一個(gè)FileStream對(duì)象的語法如下:

Dim <object_name> As FileStream = New FileStream(<file_name>, <FileMode Enumerator>, <FileAccess Enumerator>, <FileShare Enumerator>)

例如,為創(chuàng)建FileStream對(duì)象讀取文件namedsample.txt:

Dim f1 As FileStream = New FileStream("sample.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite)
參數(shù)描述
FileMode

FileModeenumerator定義了打開文件的各種方法。 FileMode枚舉器的成員是:

  • Append:它打開一個(gè)現(xiàn)有文件,并將光標(biāo)放在文件的末尾,或創(chuàng)建文件,如果該文件不存在。

  • Create:創(chuàng)建一個(gè)新的文件。

  • CreateNew:它指定操作系統(tǒng)應(yīng)該創(chuàng)建一個(gè)新文件。

  • Open:它打開一個(gè)現(xiàn)有文件。

  • OpenOrCreate:它指定操作系統(tǒng)它應(yīng)該打開一個(gè)文件,如果它存在,否則應(yīng)該創(chuàng)建一個(gè)新文件。

  • Truncate:它打開一個(gè)現(xiàn)有文件,并將其大小截?cái)酁榱阕止?jié)。

FileAccess

FileAccessenumerators有成員:Read,ReadWriteandWrite。

FileShare

FileShareenumerators有以下成員:

  • Inheritable:它允許一個(gè)文件句柄傳遞繼承子進(jìn)程

  • None:它拒絕當(dāng)前文件的共享

  • Read:它可以打開文件進(jìn)行讀取

  • ReadWrite:它允許打開文件進(jìn)行讀取和寫入

  • Write:它允許打開寫入文件

示例:

下面的程序演示使用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

當(dāng)上述代碼被編譯和執(zhí)行時(shí),它產(chǎn)生了以下結(jié)果:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

VB.Net中的高級(jí)文件操作

上面的示例在VB.Net中提供了簡(jiǎn)單的文件操作。 然而,為了利用System.IO類的巨大能力,你需要知道這些類的常用屬性和方法。

我們將討論這些類以及它們?cè)谝韵虏糠种袌?zhí)行的操作。 請(qǐng)點(diǎn)擊提供的鏈接以獲取各個(gè)部分:

主題和說明

Reading from and Writing into Text files

它涉及從文本文件讀取和寫入。 TheStreamReaderandStreamWriterclasses有助于完成它。

Reading from and Writing into Binary files

它涉及從二進(jìn)制文件讀取和寫入。 二進(jìn)制Reader和BinaryWriterclasses有助于完成這一任務(wù)。

Manipulating the Windows file system

它給了VB.Net程序員瀏覽和定位Windows文件和目錄的能力。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)