Exemple #1
0
        private void LoadCatalog()
        {
            IStorageWrapper wrapper    = new IStorageWrapper(_thumbDBFile, false);
            FileObject      fileObject = wrapper.OpenUCOMStream(null, "Catalog");
            String          textData   = String.Empty;

            if (fileObject != null)
            {
                Byte[] fileData = new Byte[fileObject.Length];
                fileObject.Read(fileData, 0, (int)fileObject.Length);

                MemoryStream  ms = new MemoryStream(fileData);
                BinaryReader  br = new BinaryReader(ms);
                CatalogHeader ch = new CatalogHeader();

                ch.num1        = br.ReadInt16();
                ch.num2        = br.ReadInt16();
                ch.thumbCount  = br.ReadInt32();
                ch.thumbWidth  = br.ReadInt32();
                ch.thumbHeight = br.ReadInt32();

                for (int index = 0; index < ch.thumbCount; index++)
                {
                    CatalogItem item = new CatalogItem();
                    item.num1   = br.ReadInt32();
                    item.itemID = br.ReadInt32();
                    item.num3   = br.ReadInt16();
                    item.num4   = br.ReadInt16();
                    item.num5   = br.ReadInt16();
                    item.num6   = br.ReadInt16();
                    ushort usChar;
                    while ((usChar = br.ReadUInt16()) != 0x0000)
                    {
                        byte[] aChar = new byte[2];
                        aChar[0]       = (byte)(usChar & 0x00FF);
                        aChar[1]       = (byte)((usChar & 0xFF00) >> 8);
                        item.filename += Encoding.Unicode.GetString(aChar);
                    }
                    item.num7 = br.ReadInt16();
                    _catalogItems.Add(item);
                }
            }
        }
Exemple #2
0
        private void LoadCatalog()
        {
            IStorageWrapper wrapper = new IStorageWrapper(_thumbDBFile, false);
            FileObject fileObject = wrapper.OpenUCOMStream(null, "Catalog");
            string textData = string.Empty;
            if( fileObject != null)
            {
                byte[] fileData = new byte [fileObject.Length];
                fileObject.Read(fileData, 0, (int)fileObject.Length);
                MemoryStream ms = new MemoryStream(fileData);
                BinaryReader br = new BinaryReader(ms);
                CatalogHeader ch = new CatalogHeader();
                ch.num1 = br.ReadInt16();
                ch.num2 = br.ReadInt16();
                ch.thumbCount = br.ReadInt32();
                ch.thumbWidth = br.ReadInt32();
                ch.thumbHeight = br.ReadInt32();

                for (int index = 0; index < ch.thumbCount; index++)
                {
                    CatalogItem item = new CatalogItem();
                    item.num1 = br.ReadInt32();
                    item.itemID = br.ReadInt32();
                    item.num3 = br.ReadInt16();
                    item.num4 = br.ReadInt16();
                    item.num5 = br.ReadInt16();
                    item.num6 = br.ReadInt16();
                    ushort usChar;
                    while((usChar = br.ReadUInt16()) != 0x0000)
                    {
                        byte[] aChar = new byte[2];
                        aChar[0] = (byte) (usChar & 0x00FF);
                        aChar[1] = (byte) ((usChar & 0xFF00) >> 8);
                        item.filename += Encoding.Unicode.GetString(aChar);
                    }
                    item.num7 = br.ReadInt16();
                    _catalogItems.Add(item);
                }
            }
        }