C#

Сериализация любого объекта в байтовый массив и обратно

using System.IO;
using System.Runtime.Serialization.Formatters.Binary;


public static byte[] ObjectToByteArray(object obj) //Переводим объект в массив
        {
            if (obj == null)
            {
                return null;
            }
            BinaryFormatter BF = new BinaryFormatter();
            MemoryStream MS = new MemoryStream();
            BF.Serialize(MS, obj);
            return MS.ToArray();
        }

        public static object ByteArrayToObject(byte[] array) //Переводим массив в объект
        {
            if (array == null)
            {
                return null;
            }
            MemoryStream MS = new MemoryStream();
            BinaryFormatter BF = new BinaryFormatter();
            MS.Write(array, 0, array.Length);
            MS.Seek(0, SeekOrigin.Begin);
            object obj = (object)BF.Deserialize(MS);
            return obj;
        }


Пример на заранее заданном массиве Data:
byte[] Data;
Dictionary<string,string> DickTator = (Dicktionary<string,string>)ByteArrayToObject(Data);


Теги:
Массивы, Сериализация, Горячие_пирожки
Добавлено: 10 Июня 2014 12:18:56 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...