私は、未知のサイズのバイト配列を持っており、4バイトごとに整数に変換したい。問題は、このようなものとして、未知の大きさは動作しませんです。残余バイト配列(未知のサイズ)を残してチャンクに分割する
Private Sub(ByVal list() as Byte)
For i = 0 To list.Count - 1 Step 4
Next
サイズが4によってdivideableではないかのように、それは例外が発生します。 バイトの配列を4バイトのチャンクに分割するにはどうすればよいですか?
これは私の現在の試みですが、例外が発生します。
Public Function MakeByteChunks(ByVal pByte() As Byte, ByVal pSize As Integer) As List(Of Byte())
Dim chunkList As New List(Of Byte())
For i = 0 To pByte.Count - 1
Dim tmpchunkList(pSize) As Byte
Array.Copy(pByte, i, tmpchunkList, 0, pSize)
chunkList.Add(tmpchunkList)
Next
Return chunkList
End Function
私は整数に変換しようとしている:
Dim splittedArray = MakeByteChunks(list, 1)
For i = 0 To splittedArray.Count - 1
Dim Value = BitConverter.ToInt32(splittedArray(i), 0)})
Next
あなたがループ内で何をしているかに依存します。あなたが今私たちに示しているコードは完全に安全であるようです。 – derpirscher
私が言ったように私はすべての4バイトを整数に変換しようとしています。バイト配列から整数を読み込みたいからです。また、BitConverter.ToInt32はオフセットをパラメータとして取ります。 – Baldik
次にどのように表示しているのですか – derpirscher