protected override void ReadSections(BinaryReaderWriter br) { // --------- Dateiabschnitte für die Rohdaten bilden --------- Filesections.AddSection((int)InternalFileSections.ContentsBlock, new DataBlock(ContentsBlock)); // GapOffset und DataOffset setzen SetSpecialOffsetsFromSections((int)InternalFileSections.PostHeaderData); if (GapOffset > HeaderOffset + Headerlength) // nur möglich, wenn extern z.B. auf den nächsten Header gesetzt { PostHeaderDataBlock = new DataBlock(HeaderOffset + Headerlength, GapOffset - (HeaderOffset + Headerlength)); Filesections.AddSection((int)InternalFileSections.PostHeaderData, PostHeaderDataBlock); } // Datenblöcke einlesen Filesections.ReadSections(br); // Pos. der anderen beiden Datenblöcke ermitteln ... Decode_ContentsBlock(Filesections.GetSectionDataReader((int)InternalFileSections.ContentsBlock), new DataBlock(0, Filesections.GetLength((int)InternalFileSections.ContentsBlock))); // ... und einlesen Filesections.Read((int)InternalFileSections.DescriptionBlock, br); Filesections.Read((int)InternalFileSections.CharacterLookupTableBlock, br); }