ディレクトリとファイル エントリを含むアーカイブ ファイルを読み込もうとしています。ファイルのヘッダーを読み込んで情報を取得することができました。
ここでフォーマットに関する情報を見つけることができます
現在、ファイルには、ファイルの起点から 2048 バイトの後に始まる目次モジュールが含まれています。
私が知っているのは、TOCには2つのものを含めることができるということです:
次の構造に従うディレクトリ エントリ:
- 4bytes :int32 : エントリ名が格納されている場所の名前オフセット
- 4bytes : int32 : 情報フラグ。4 バイトの各ビットには、何かに関する情報が含まれています。
- 4bytes : Uint32 : コンテンツ エントリ インデックス
- 4bytes : uint32 : コンテンツのエントリ数
ファイルエントリは次の構造に従います。
- 4bytes : int32 : 名前のオフセット
- 4bytes : int32 : ファイルサイズ
- 3bytes : Uint24 : ファイルが保存されている場所のオフセット
- 1byte : Uchar8 : リソースタイプ
- 4byte : uint32 : 情報フラグ
これで、すべてのディレクトリ エントリまたはファイル エントリが同じになります。
問題は、目次の最初が何なのか、すべてのエントリの順序がわからないことです。不明です。
私が知っているのは、ファイルヘッダーからです。エントリ数と、エントリの数と目次のサイズです。
バイナリリーダーを使用して、すべてのエントリを読み取る必要がある形式を見つけたり、特定の種類のエントリを見つけたりする方法はありますか?
ヘッダーからエントリ数を知っているので、これには for ループを使用します。
どんな助けでも大歓迎です