Esempio n. 1
0
        private void PackBigEndianCompressedDictionary(ZtrFileEntry[] entries)
        {
            _bw.Write((int)ZtrFileType.BigEndianCompressedDictionary);

            ZtrFileHeader header = new ZtrFileHeader
            {
                Version = 1,
                Count   = entries.Length
            };

            using (MemoryStream ms = new MemoryStream(32 * 1024))
            {
                ZtrFileKeysPacker keyPacker = new ZtrFileKeysPacker(ms, entries);
                keyPacker.Pack(header);

                ZtrFileTextPacker textPacker = new ZtrFileTextPacker(ms, entries, _encoding);
                textPacker.Pack(header);

                header.WriteToStream(_output);
                ms.Position = 0;
                ms.CopyTo(_output);
            }
        }