• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:byte配列の途中から2個ずつintに移すには?)

byte配列をintに変換する方法

このQ&Aのポイント
  • C#を使用して、byte配列の途中から2個ずつintに移す方法を教えてください。
  • データの取得対象はヘッダとサブヘッダ以降で、値は2バイトずつです。
  • より簡潔な方法があれば教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • wolf03
  • ベストアンサー率22% (241/1086)
回答No.1

recvData[5]のアドレスを使って、unsigned short型ポインタ使えばいいのでは?

Passerby01
質問者

補足

すみません。丸1日かかり、自己解決しました。 BitConverter.ToUInt16(recvData,i*2)

その他の回答 (1)

  • aurumnet
  • ベストアンサー率43% (51/117)
回答No.2

ビルドするときはunsafeオプションをつけて byte[] test = { 2, 3, 4, 5,6, 1, 0, 2, 0, 255, 255, 5 }; int x; unsafe { for(int i=0;i<3;i++){ int* xp=&x; byte* p = (byte*)xp; *p = test[5 + i * 2]; ++p; *p = test[5 + i * 2+1]; Console.WriteLine("{0}", x); } } Console.ReadLine();

参考URL:
http://msdn.microsoft.com/ja-jp/library/ct597kb0%28VS.80%29.aspx