檔案是儲存在具有特定名稱和目錄路徑的磁碟中的資料的集合。當一個檔案被開啟進行讀或寫時,它就成為一個流。
流基本上是通過通訊路徑的位元組序列。 有兩個主流:輸入流和輸出流。 輸入流用於從檔案讀取資料(讀取操作),輸出流用於寫入檔案(寫入操作)。
System.IO
名稱空間具有各種類,用於執行檔案的各種操作,如建立和刪除檔案,讀取或寫入檔案,關閉檔案等。
下表顯示了System.IO
名稱空間中的一些常用的非抽象類:
編號 | I/O類 | 描述 |
---|---|---|
1 | BinaryReader |
從二進位制流讀取原始資料。 |
2 | BinaryWriter |
以二進位制格式寫入原始資料。 |
3 | BufferedStream |
臨時儲存一個位元組流。 |
4 | Directory |
幫助操作目錄結構。 |
5 | DirectoryInfo |
用於在目錄上執行操作。 |
6 | DriveInfo |
提供驅動器的資訊。 |
7 | File |
用於操縱檔案。 |
8 | FileInfo |
用於對檔案執行操作。 |
9 | FileStream |
用於讀取和寫入檔案中的任何位置。 |
10 | MemoryStream |
用於隨機存取儲存在記憶體中的流式資料。 |
11 | Path |
對路徑資訊進行操作。 |
12 | StreamReader |
用於從位元組流中讀取字元。 |
13 | StreamWriter |
用於將字元寫入流中。 |
14 | StringReader |
用於從字串緩衝區讀取。 |
15 | StringWriter |
用於寫入字串緩衝區。 |
System.IO
名稱空間中的FileStream
類有助於讀取,寫入和關閉檔案。這個類派生自抽象類Stream
。
需要建立一個FileStream
物件來建立一個新檔案或開啟一個現有的檔案。建立FileStream
物件的語法如下所示:
Dim <object_name> As FileStream = New FileStream(<file_name>, <FileMode Enumerator>, <FileAccess Enumerator>, <FileShare Enumerator>)
例如,為了建立一個FileStream
物件F來讀取名為sample.txt
的檔案:
Dim f1 As FileStream = New FileStream("sample.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite)
以下是引數和描述 -
FileMode - FileMode 列舉器定義了開啟檔案的各種方法。FileMode
列舉器的成員是:
FileAccess - FileAccess
列舉員具有成員:Read
,ReadWrite
和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
當上面的程式碼被編譯並執行時,會產生以下結果:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 -1
前面的例子提供了VB.Net中的簡單檔案操作。但是,要利用System.IO
類的強大功能,需要了解這些類的常用屬性和方法。
我們將在下面的章節中討論這些類和它們所執行的操作。請點選提供的連結以存取各個部分:
編號 | 方法 | 描述 |
---|---|---|
1 | 讀取和寫入文字檔案 | 它涉及到讀取和寫入文字檔案。StreamReader 和StreamWriter 類有助於實現它。 |
2 | 讀取和寫入二進位制檔案 | 它涉及到讀取和寫入二進位制檔案。BinaryReader 和BinaryWriter 類有助於實現這一點。 |
3 | 操作Windows檔案系統 | 它使VB.Net程式員能夠瀏覽和查詢Windows檔案和目錄。 |