CfbReader

CfbReader

概要

CfbReader は Compound File Binary ファイル用の低レベルで読み取り専用のパーサです。FromFile または FromStream でインスタンスを作成し、IterStorages、IterStreams、IterChildren、FindChildByName を使ってディレクトリツリーをナビゲートします。GetStreamData を使用して、名前付きストリームから生バイトを読み取ります。IDisposable を実装しています;常に using ブロック内で使用して、ファイルハンドルを解放してください。

コンストラクタ

シグネチャ説明
CfbReader(data: byte[])指定されたパラメータで新しいCfbReaderを作成します。

メソッド

シグネチャ説明
FromFile(path: string)path のCFBファイルを開き、新しいCfbReaderを返します。
FromStream(stream: Stream)stream から CFB ファイルを読み取り、新しいCfbReaderを返します。
Dispose()このリーダーが保持しているファイルハンドルまたはストリームをすべて解放します。
GetEntry(streamId: uint)指定された streamId に対する DirectoryEntry を返します。
GetStreamData(streamId: uint)streamId によって識別されるストリームの生バイトコンテンツを返します。
IterStorages()ツリー順で全てのストレージタイプのディレクトリエントリを生成します。
IterStreams()ツリー順で全てのストリームタイプのディレクトリエントリを生成します。
IterChildren(storageStreamId: uint)ストレージ storageStreamId によって識別される直接の子エントリを返します。
IterTree(startStreamId: uint)startStreamId を根とするサブツリー内のすべてのエントリを(深さ優先で)返します。
FindChildByName(storageStreamId: uint, name: string)storageStreamId の直接の子で、名前が name と等しいもののストリームIDを返します。見つからない場合は null を返します。
ResolvePath(names: IEnumerable<string>, startStreamId: uint)startStreamId から開始して names のシーケンスをたどり、最終エントリのストリームIDを返します。

プロパティ

名前型アクセス説明
HeaderHeader読み取り解析されたCFBファイルヘッダー;セクタサイズフィールドを公開します。
DifatReadOnlyCollection<uint>読み取りDIFATセクタチェーンの読み取り専用ビュー。
FatReadOnlyCollection<uint>読み取りFAT(file allocation table)セクタチェーンの読み取り専用ビュー。
MiniFatReadOnlyCollection<uint>読み取りFAT(file allocation table)セクタチェーンの読み取り専用ビュー。
DirectoryEntriesReadOnlyCollection<DirectoryEntry>読み取りディレクトリセクタから解析されたすべての 128 バイト ディレクトリエントリを、生の順序で。
RootEntryDirectoryEntry読み取りルートディレクトリエントリ(ストリーム ID 0)。
MiniStreambyte[]読み取りミニストリームコンテナの生バイト(ルートエントリのデータストリーム)。
MajorVersionint読み取りファイルヘッダーから解析された CFB のメジャーバージョン。
SectorSizeint読み取りバイト単位のセクタサイズ(v3 は 512、v4 は 4096)。
MiniSectorSizeint読み取りバイト単位のセクタサイズ(v3 は 512、v4 は 4096)。
DirectoryEntryCountint読み取りディレクトリセクタにあるディレクトリエントリレコードの総数。
MaterializedStreamCountint読み取り解析されたドキュメント内でデータが空でないストリームの数。
FileSizeint読み取りソースファイルまたはストリームの総サイズ(バイト単位)。

参照

 日本語