I have a byte array containing bytes from a file(see my last question)
now I want to get the second lot of 4 bytes from the array and convert them to an integer
something like bytearray.get(4[start],4[length])
2 Answers
Public Function ByteArrayToInteger(ByRef ByteArray() As Byte, ByRef StartIndex As Integer, ByRef EndIndex As Integer) As Integer
Dim bSubArray(0 To EndIndex - StartIndex) As Byte
For i As Integer = StartIndex To EndIndex
bSubArray(i - StartIndex) = ByteArray(i)
Next
Return BitConverter.ToInt32(bSubArray, 0)
End Function
'calling it :
Dim b() As Byte = {1, 2, 3, 4, 5, 6}
Dim x As Integer = ByteArrayToInteger(b, 0, 3)
3 Comments
Ali Tarhini
note that to convert bytes to an integer you need at least 4 bytes to do the conversion or an exception will be thrown
Jonathan.
I know, but I think this answer is too complicated the above one seems simple. Is this way a better way to do it?
Ali Tarhini
its more flexible with this way