Auxilium_Server.Classes.Pack.Deserialize C# (CSharp) Метод

Deserialize() публичный Метод

public Deserialize ( byte data ) : object[]
data byte
Результат object[]
        public object[] Deserialize(byte[] data)
        {
            try
            {
                MemoryStream Stream = new MemoryStream(data);
                BinaryReader Reader = new BinaryReader(Stream, Encoding.UTF8);
                List<object> Items = new List<object>();
                byte Current = 0;
                byte Count = Reader.ReadByte();

                for (int I = 0; I < Count; I++)
                {
                    Current = Reader.ReadByte();

                    switch (Current)
                    {
                        case 0:
                            Items.Add(Reader.ReadBoolean());
                            break;
                        case 1:
                            Items.Add(Reader.ReadByte());
                            break;
                        case 2:
                            Items.Add(Reader.ReadBytes(Reader.ReadInt32()));
                            break;
                        case 3:
                            Items.Add(Reader.ReadChar());
                            break;
                        case 4:
                            Items.Add(Reader.ReadString().ToCharArray());
                            break;
                        case 5:
                            Items.Add(Reader.ReadDecimal());
                            break;
                        case 6:
                            Items.Add(Reader.ReadDouble());
                            break;
                        case 7:
                            Items.Add(Reader.ReadInt32());
                            break;
                        case 8:
                            Items.Add(Reader.ReadInt64());
                            break;
                        case 9:
                            Items.Add(Reader.ReadSByte());
                            break;
                        case 10:
                            Items.Add(Reader.ReadInt16());
                            break;
                        case 11:
                            Items.Add(Reader.ReadSingle());
                            break;
                        case 12:
                            Items.Add(Reader.ReadString());
                            break;
                        case 13:
                            Items.Add(Reader.ReadUInt32());
                            break;
                        case 14:
                            Items.Add(Reader.ReadUInt64());
                            break;
                        case 15:
                            Items.Add(Reader.ReadUInt16());
                            break;
                        case 16:
                            Items.Add(DateTime.FromBinary(Reader.ReadInt64()));
                            break;
                    }
                }

                Reader.Close();
                return Items.ToArray();
            }
            catch
            {
                return null;
            }
        }