概要
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を返します。 |
プロパティ
| 名前 | 型 | アクセス | 説明 |
|---|
Header | Header | 読み取り | 解析されたCFBファイルヘッダー;セクタサイズフィールドを公開します。 |
Difat | ReadOnlyCollection<uint> | 読み取り | DIFATセクタチェーンの読み取り専用ビュー。 |
Fat | ReadOnlyCollection<uint> | 読み取り | FAT(file allocation table)セクタチェーンの読み取り専用ビュー。 |
MiniFat | ReadOnlyCollection<uint> | 読み取り | FAT(file allocation table)セクタチェーンの読み取り専用ビュー。 |
DirectoryEntries | ReadOnlyCollection<DirectoryEntry> | 読み取り | ディレクトリセクタから解析されたすべての 128 バイト ディレクトリエントリを、生の順序で。 |
RootEntry | DirectoryEntry | 読み取り | ルートディレクトリエントリ(ストリーム ID 0)。 |
MiniStream | byte[] | 読み取り | ミニストリームコンテナの生バイト(ルートエントリのデータストリーム)。 |
MajorVersion | int | 読み取り | ファイルヘッダーから解析された CFB のメジャーバージョン。 |
SectorSize | int | 読み取り | バイト単位のセクタサイズ(v3 は 512、v4 は 4096)。 |
MiniSectorSize | int | 読み取り | バイト単位のセクタサイズ(v3 は 512、v4 は 4096)。 |
DirectoryEntryCount | int | 読み取り | ディレクトリセクタにあるディレクトリエントリレコードの総数。 |
MaterializedStreamCount | int | 読み取り | 解析されたドキュメント内でデータが空でないストリームの数。 |
FileSize | int | 読み取り | ソースファイルまたはストリームの総サイズ(バイト単位)。 |
参照