一連の数値を含むバイト配列があります...
残りではなく、ブロックします。
ブロック 4 ~ 8 をすべて含めるにはどうすればよいですTemp[]
か??
要素 4 ~ 8 (または実際にはインデックス 3 ~ 7) は 5 バイトです。4 ではありません。
ソース オフセットとカウントが混同されています。
Buffer.BlockCopy(bResponse, 3, temp, 0, 5);
これで、temp に が含まれます[23232]
。
最後の 4 バイトが必要な場合は、次を使用します。
Buffer.BlockCopy(bResponse, 4, temp, 0, 4);
これで、temp に が含まれます[3232]
。
これを int に変換するには:
if (BitConverter.IsLittleEndian)
Array.Reverse(temp);
int i = BitConverter.ToInt32(temp, 0);
編集:([43323232]
実際には あなたのコメントの後{43, 32, 32, 32}
)
var firstByte = temp[0]; // This is 43
var secondByte = temp[1]; // This is 32
var thirdByte = temp[2]; // 32
var fourthByte = temp[3]; // 32
これを int に変換したい場合、上記の BitConverter の例は引き続き機能します。