Сериализация в один файл - C#
Формулировка задачи:
Здравствуйте!
У меня есть три обьекта одного класса, которые я хочу сериализовать в один файл с помощю BinaryFormatter(и десериализовать потом обратно). Это возможно или в данном случае сериализовать эти обьекты можно только в разные файлы?
Суть в том, что подобных обьектов может быть и не три а 10 допустим, и тогда не подойдем ручной ввод нового имени каждому потоку.
Решение задачи: «Сериализация в один файл»
textual
Листинг программы
- var fileName = "user.dat";
- var users = new List<User>
- {
- new User("Tommi", 29),
- new User("Mark", 20),
- new User("Danny", 34)
- };
- var binFormat = new BinaryFormatter();
- using (var fs = new FileStream(fileName, FileMode.Create))
- {
- foreach (var user in users)
- {
- binFormat.Serialize(fs, user);
- }
- }
- using (var fs = new FileStream(fileName, FileMode.Open))
- {
- while (fs.Length != fs.Position)
- {
- var dsUser = (User) binFormat.Deserialize(fs);
- Console.WriteLine("Имя: {0} \t Возраст: {1}", dsUser.Name, dsUser.Age);
- }
- }
- Console.ReadLine();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д