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

わんくま同盟

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

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


■86230 / )  バイナリデータの途中から切り出して出力する方法
□投稿者/ へなちょこ (1回)-(2018/01/01(Mon) 19:46:08)

分類:[VB.NET/VB2005 以降] 

見よう見まねでVBのプログラムをやっている初心者です。
読み込んだファイルを分割して表にしたいのですが、以下のようなことはどうすればできますでしょうか?

あるファイルを読み込んだところ、バイナリで見ると以下のようになっていたとします。

00 00 04 02 00 00 00 00 11 11 11 11 22 22
00 00 06 04 00 00 00 00 33 33 33 33 33 33 44 44 44 44

・最初の2バイトは取り出さなくてよいデータ
・3バイト目は後続する「文字1」の文字数
・4バイト目は後続する「文字2」の文字数
・5〜8の4バイトは不要なデータ
・文字1のデータ(2バイト文字が入り、長さは可変(3バイト目の値で長さが分かる))
・文字2のデータ(2バイト文字が入り、長さは可変(4バイト目の値で長さが分かる))

この「文字1」「文字2」を取り出して、データテーブルに代入したいと思っています。

読み込んだファイルは、このような構造のバイナリデータの集合体なので、引き続き
同じような処理が必要です。
(上のバイナリの例ですと、「00 00 04 02 00 00 00 00 11 11 11 11 22 22」の後に
また同じ構造のデータがあるので、連続して同じ処理を行い、データテーブルの新しい
列に代入したいという意味です。)

初心者なため、どのように説明すれば分かりやすいのかも分からないため、不足している
情報がありましたら、お教えください。

年始のお忙しいところ恐縮ですが、ご教授いただければ幸いです。
よろしくお願いします。


返信 編集キー/


管理者用

- Child Tree -