개요
CfbWriter은(는) CfbDocument을(를) 유효한 Compound File Binary 파일로 직렬화합니다. 직렬화된 내용을 바이트 배열로 얻으려면 ToBytes을(를) 호출하고, 디스크에 직접 쓰려면 WriteFile을(를) 호출하십시오. 내부 Serialize 메서드는 MS-CFB 사양에 따라 FAT, DIFAT, mini-FAT 및 디렉터리 섹터를 구축합니다. 생성자는 작성자에 의해 내부적으로 엔트리 레코드와 섹터 체인을 나타내는 데 사용됩니다.
생성자
| 시그니처 | 설명 |
|---|
Serializer(document: CfbDocument) | 지정된 매개변수를 사용하여 새 CfbWriter를 생성합니다. |
EntryRecord(streamId: uint, name: string, objectType: DirectoryObjectType, clsid: byte[], stateBits: uint, creationTime: ulong, modifiedTime: ulong) | 지정된 매개변수를 사용하여 새 CfbWriter를 생성합니다. |
Chain(payload: byte[]) | 지정된 매개변수를 사용하여 새 CfbWriter를 생성합니다. |
메서드
| 시그니처 | 설명 |
|---|
ToBytes(document: CfbDocument) | document를 CFB 호환 바이트 배열로 직렬화합니다. |
WriteFile(document: CfbDocument, path: string) | document을 직렬화하고 path에 있는 파일에 씁니다. |
Serialize() | 내부 CFB 레이아웃을 수행합니다: FAT 섹터를 할당하고 디렉터리 항목을 구축한 뒤 전체 바이너리를 반환합니다. |
속성
| 이름 | 유형 | 액세스 | 설명 |
|---|
StreamId | uint | 읽기 | 이 엔트리 레코드에 할당된 0 기반 디렉터리 인덱스입니다. |
Name | string | 읽기 | UTF-16LE 항목 이름은 CFB 디렉터리에 나타나는 방식입니다. |
ObjectType | DirectoryObjectType | 읽기 | 이 항목의 object-type 바이트에 인코딩된 DirectoryObjectType 값. |
Clsid | byte[] | 읽기 | 이 항목의 CLSID 필드에 기록된 16바이트 CLSID. |
StateBits | uint | 읽기 | 응용 프로그램이 정의한 상태 비트가 이 항목에 기록됩니다. |
CreationTime | ulong | 읽기 | 생성 타임스탬프(FILETIME)가 이 항목에 기록됩니다. |
ModifiedTime | ulong | 읽기 | 이 항목에 기록된 수정 타임스탬프 (FILETIME). |
StreamData | byte[] | 읽기 | 스트림 유형 항목에 대한 payload bytes (스토리지 유형 항목의 경우 비어 있음). |
Children | List<EntryRecord> | 읽기 | 스토리지 유형 노드에 대한 자식 EntryRecord 항목의 순서가 있는 목록. |
ColorFlag | DirectoryColorFlag | 읽기 | 레드-블랙 트리 색상이 이 항목의 디렉터리 레코드에 기록됩니다. |
LeftSiblingId | uint | 읽기 | 레드-블랙 트리에서 왼쪽 형제의 스트림 ID. |
RightSiblingId | uint | 읽기 | 레드-블랙 트리에서 오른쪽 형제의 Stream ID. |
ChildId | uint | 읽기 | 스토리지 유형 노드에 대한 첫 번째 자식 항목의 Stream ID. |
StartingSectorLocation | uint | 읽기 | 이 스트림 데이터의 첫 번째 FAT 섹터 인덱스. |
StreamSize | ulong | 읽기 | 스트림 데이터 페이로드의 바이트 크기. |
IsRoot | bool | 읽기 | 이 항목이 루트 스토리지 항목(스트림 ID 0)인 경우 True. |
IsStorage | bool | 읽기 | 이 항목이 저장 컨테이너인 경우 True. |
IsStream | bool | 읽기 | 이 항목이 데이터 스트림인 경우 True. |
Payload | byte[] | 읽기 | 이 항목의 전체 직렬화된 바이트(체인 빌더에서 내부적으로 사용됨). |
Sectors | List<uint> | 읽기 | 이 항목 데이터에 할당된 FAT 섹터 인덱스의 정렬된 목록. |
FirstSector | uint | 읽기 | 이 항목 데이터에 할당된 첫 번째 FAT 섹터의 인덱스. |
참조