개요
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) | 이름이 name과 같은 storageStreamId의 직접 하위 항목의 스트림 ID를 반환하며, 찾을 수 없으면 null을 반환합니다. |
ResolvePath(names: IEnumerable<string>, startStreamId: uint) | startStreamId에서 시작하여 names 시퀀스를 순회하고 최종 항목의 스트림 ID를 반환합니다. |
속성
| 이름 | 유형 | 액세스 | 설명 |
|---|
Header | Header | 읽기 | 구문 분석된 CFB 파일 헤더; 섹터 크기 필드를 노출합니다. |
Difat | ReadOnlyCollection<uint> | 읽기 | DIFAT 섹터 체인의 읽기 전용 보기. |
Fat | ReadOnlyCollection<uint> | 읽기 | FAT(파일 할당 테이블) 섹터 체인의 읽기 전용 보기. |
MiniFat | ReadOnlyCollection<uint> | 읽기 | FAT(파일 할당 테이블) 섹터 체인의 읽기 전용 보기. |
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 | 읽기 | 소스 파일 또는 스트림의 전체 크기(바이트). |
참조