如何读取 VB.NET 中字节数组中的特定字节?
How can I read a specific byte in a byte array in VB.NET?
我使用 Dim settingsBinary As Byte() = My.Computer.FileSystem.ReadAllBytes(settingsFile)
将一个二进制文件加载到字节数组中,其中 settingsFile 是我的二进制文件的路径。
假设我的二进制文件有三个字节,我想将第一个字节读取为布尔值(00 = False,01 = True)。我怎样才能得到这些字节?我曾尝试使用 this question's answer 来读取这三个字节,但我无法理解它。
澄清一下,我需要分别获取三个字节:获取第一个字节,然后将 CheckBox1.Checked
设置为第一个字节,以此类推其他字节。
字节数组就像任何其他数组一样工作:您可以使用 索引器 来访问特定元素。
Dim firstByte As Byte = settingsBinary(0)
Dim secondByte As Byte = settingsBinary(1)
Dim thirdByte As Byte = settingsBinary(2)
然后你可以将字节转换成布尔值:
Dim firstBoolean As Boolean
Select Case firstByte
Case 0
firstBoolean = False
Case 1
firstBoolean = True
Case Else
Throw New Exception("Invalid first byte in settings file: " & firstByte)
End Select
(将转换逻辑概括为可用于所有三个字节的方法留作 reader 的练习。)
我使用 Dim settingsBinary As Byte() = My.Computer.FileSystem.ReadAllBytes(settingsFile)
将一个二进制文件加载到字节数组中,其中 settingsFile 是我的二进制文件的路径。
假设我的二进制文件有三个字节,我想将第一个字节读取为布尔值(00 = False,01 = True)。我怎样才能得到这些字节?我曾尝试使用 this question's answer 来读取这三个字节,但我无法理解它。
澄清一下,我需要分别获取三个字节:获取第一个字节,然后将 CheckBox1.Checked
设置为第一个字节,以此类推其他字节。
字节数组就像任何其他数组一样工作:您可以使用 索引器 来访问特定元素。
Dim firstByte As Byte = settingsBinary(0)
Dim secondByte As Byte = settingsBinary(1)
Dim thirdByte As Byte = settingsBinary(2)
然后你可以将字节转换成布尔值:
Dim firstBoolean As Boolean
Select Case firstByte
Case 0
firstBoolean = False
Case 1
firstBoolean = True
Case Else
Throw New Exception("Invalid first byte in settings file: " & firstByte)
End Select
(将转换逻辑概括为可用于所有三个字节的方法留作 reader 的练习。)