Десериализация в List - C#

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

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

Здравствуйте. Есть следующий код :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Xml.Serialization;
 
namespace xml
{
    class Program
    {
        static void Main()
        {
            Person p1 = new Person("vasya", 18);
            Person p2 = new Person("arsen", 21);
            List list = new List(2);
            List lst = new List();
            list.Add(p1);
            list.Add(p2);
            XmlSerializer ser = new XmlSerializer(list.GetType());
            using (FileStream sw = new FileStream("D:/txt1.txt",FileMode.OpenOrCreate))
            {
                ser.Serialize(sw, list);
            }
            using (FileStream fs = new FileStream("D:/txt1.txt", FileMode.Open))
            {
                lst.Add(p3 = (Person)ser.Deserialize(fs));
            }
            foreach(Person per in lst)
            {
                Console.WriteLine(per);
            }
        }
    }
 
    [Serializable]
    public class Person
    {
        public string Name { get; set; }
        public int Age { get; set; }
        public Person()
        {
 
        }
        public Person(string n,int a)
        {
            Name = n;
            Age = a;
        }
        public override string ToString()
        {
            return string.Format("Name is {0}, age is {1}", Name, Age);
        }
    }
}
Как мне сделать десериализацию с файла в новый List?

Решение задачи: «Десериализация в List»

textual
Листинг программы
List<Person> list2 = (List<Person>)ser.Deserialize(fs)

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


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

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

14   голосов , оценка 3.786 из 5
Похожие ответы