2

バイナリ ファイルを解析しようとしていますが、BinDataを正しく使用する方法がわかりません。

バイナリのセットアップ方法は次のようになります。

  1. 最初の 4 バイト (UINT32) は、プロパティ名の長さを表します。
  2. 次の 8 * 長さは、プロパティ名を (文字列として) 表します。
  3. 次の 4 バイト (UINT32) は、プロパティ タイプの長さを表します。
  4. 次の 8 * 長さは、プロパティ タイプを (文字列として) 表します。
  5. 次の 8 バイト (UINT64) は、データの長さを表します。
  6. この後、データは任意のバイト数になる可能性があります (データのタイプに応じて、int (4)、string (4 * len)、float (4)、または配列)。

この後、プロセスは次のプロパティで繰り返されます。

私の質問は次のとおりです。

  1. MyBinDataClass.read() を呼び出すとき、ファイル全体ではなく、読み取る正しい部分をどのようにフィードするのですか? また、各プロパティが実際にどのくらいの長さなのかわからないため (タイプによって異なります)、どうすれば適切に分割できますか? ?

  2. 単一の BinData でさまざまなプロパティ タイプを処理するにはどうすればよいですか?

4

0 に答える 0