C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

バイト配列を順番に数値データ化する方法

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■93558 / inTopicNo.1)  バイト配列を順番に数値データ化する方法
  
□投稿者/ カルピス (6回)-(2019/12/21(Sat) 20:54:19)

分類:[.NET 全般] 

バイナリデータを頭から順番に読んで数値化する場合

Dim aaa = reader.ReadInt16()
Dim bbb = reader.ReadInt32()
・・・・

というように順番に書いていくだけでできます。

一方で、バイト配列を頭から順番に読んで数値化する場合


Dim aaa = BitConverter.ToUInt16(BinaryData, 0)
Dim bbb = BitConverter.ToUInt32(BinaryData, 2)
・・・・

というようにする必要がありますか?
読み込む箇所の要素数を指定する必要があるために、
順番を変える時が不便なのですが・・
count変数を定義するにしても
変数によってバイト数が異なるので
やはり不便なのですが・・・

バイナリデータの時のようにもっと簡単な方法があれば教えてください。


引用返信 編集キー/
■93559 / inTopicNo.2)  Re[1]: バイト配列を順番に数値データ化する方法
□投稿者/ Azulean (1117回)-(2019/12/21(Sat) 21:00:40)
No93558 (カルピス さん) に返信
> バイナリデータの時のようにもっと簡単な方法があれば教えてください。

MemoryStream にそのバイト配列を渡して、その MemoryStream を元に BinaryReader を作れば良いのでは?

Dim memory As New MemoryStream(BinaryData)
Dim reader As New BinaryReader(memory)
Dim aaa = reader.ReadInt16()
Dim bbb = reader.ReadInt32()

引用返信 編集キー/
■93560 / inTopicNo.3)  Re[2]: バイト配列を順番に数値データ化する方法
□投稿者/ PANG2 (327回)-(2019/12/21(Sat) 21:08:59)
構造体
引用返信 編集キー/
■93561 / inTopicNo.4)  Re[3]: バイト配列を順番に数値データ化する方法
□投稿者/ カルピス (7回)-(2019/12/21(Sat) 21:38:25)
ぐへええ、こんな方法があったのですね。
どうもありがとうございました。。。
解決済み
引用返信 編集キー/

このトピックをツリーで一括表示


トピック内ページ移動 / << 0 >>

このトピックに書きこむ