コード例 #1
0
        public void Read(BinaryReader br)
        {
            for (; ;)
            {
                HeaderProperty hp = (HeaderProperty)br.ReadByte();
                switch (hp)
                {
                case HeaderProperty.kPackInfo:
                    PackedStreamInfo.Read(br, out PackPosition, out PackedStreams);
                    continue;

                case HeaderProperty.kUnPackInfo:
                    Folder.ReadUnPackInfo(br, out Folders);
                    continue;

                case HeaderProperty.kSubStreamsInfo:
                    Folder.ReadSubStreamsInfo(br, ref Folders);
                    continue;

                case HeaderProperty.kEnd:
                    return;

                default:
                    throw new Exception(hp.ToString());
                }
            }
        }