This page looks plain and unstyled because you're using a non-standard compliant browser. To see it in its best form, please visit upgrade to a browser that supports web standards. It's free and painless.

羅伯特學程式 會員登入 會員註冊

« 上一篇 | 下一篇 »

有時候讀寫檔案的動作不見得只是針對文字資料.
因此 .NET Framework 的 BinaryReader 命名空間也提供兩個類別支援二進位資料的讀寫.

這兩的類別 BinaryReader 和 BinaryWriter 可以用來處理二進位資料對資料流的讀寫動作.

以下示範將各種不同類別的資料寫入資料流中.

Dim NewFile As FileStream = File.Create("D:\temp\somefile.bin")
 
Dim writer As BinaryWriter = New BinaryWriter(NewFile)
 
Dim number As Long = 100
Dim bytes() As Byte = New Byte(){10,20,50,100}
 
Dim s As String = "hunger"
 
writer.Write(number)
writer.Write(bytes)
writer.Write(s)
 
writer.Close()


如果已經使用過 BinaryWriter 寫入資料, 就可以利用 BinaryReader 以相同的順序取得這些資料.
對每一個 BinaryWriter.Write 或是 WriteLine 方法呼叫, 你都必須呼叫適當的 BinaryReader.Read 方法.

下列程式示範讀取前面範例所寫入的資料 :



Dim NewFile As FileStream = File.Open("d:\temp\somefile.bin", FileMode.Open)
 
Dim rd As New BinaryReader(NewFile)
 
Dim number As Long = rd.ReadInt64()
Dim bytes() As Byte = rd.ReadBytes(4)
Dim s As String = rd.ReadString()
 
rd.Close()
 
Console.WriteLine(number)
Dim b As Byte
For each b in bytes
    Console.Write("[{0}]", b)
Next
Console.WriteLine()
Console.WriteLine(s)
發表回應

 暱稱 (必填)

 標題

 個人網頁

 電子郵件

authimage 
 認證碼 (必填)