using System; using System.IO; using System.Runtime.Serialization.Formatters.Binary; namespace Serialization { [Serializable] class Person { public string Name { get; set; } public int Age { get; set; } public Person(string name, int age) { Name = name; Age = age; } } class Program { static void Main(string[] args) { // объект для сериализации Person person = new Person("Tom", 29); Console.WriteLine("Объект создан"); // создаем объект BinaryFormatter BinaryFormatter formatter = new BinaryFormatter(); // получаем поток, куда будем записывать сериализованный объект using (FileStream fs = new FileStream("people.dat", FileMode.OpenOrCreate)) { formatter.Serialize(fs, person); Console.WriteLine("Объект сериализован"); } // десериализация из файла people.dat using (FileStream fs = new FileStream("people.dat", FileMode.OpenOrCreate)) { Person newPerson = (Person)formatter.Deserialize(fs); Console.WriteLine("Объект десериализован"); Console.WriteLine($"Имя: {newPerson.Name} --- Возраст: {newPerson.Age}"); } Console.ReadLine(); } } }