Сериализация объекта - C#

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток. Мне нужно сериализавать объект то есть создать бинарный файл, проблема в том что я хочу до записывать одинаковые объекты в этот файл а потом при необходимости считывать объекты по одному. Структура самого объекта будет всегда одинакова. Вопрос это вообще возможно и если возможно то объясните как?

Решение задачи: «Сериализация объекта»

textual
Листинг программы
    static void Main(string[] args)
    {
        List<A> list = new List<A>();
        list.Add(new A() { a = 1 });
        list.Add(new A() { a = 2 });
        // ...
 
        string path = @"D:\file.bin";
 
        if (!File.Exists(path))
            File.Create(path).Close();
 
        // Сериализация
        using (FileStream fs = new FileStream(path, FileMode.Open))
            foreach (A a in list)
                new BinaryFormatter().Serialize(fs, a);
 
        // Десериализация
        A b = new A();
        using (FileStream fs = new FileStream(path, FileMode.Open))
            b = (A)new BinaryFormatter().Deserialize(fs); 
 
        Console.Write(b.a + " ");
        Console.ReadKey();   
    }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.8 из 5