Сохранение объектов класса в Xml файл - C#

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

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

нужно сохранить значение классов в xml файл описание одного из классов
Листинг программы
  1. class AnimalTip
  2. {
  3. private string _name_tip; //название типа
  4. private string _inform; //инфо о типе
  5. private string _habitat; //среда обитания
  6. public AnimalTip(string name_tip, string inform, string habitat)
  7. {
  8. _name_tip = name_tip;
  9. _inform = inform;
  10. _habitat = habitat;
  11. }
  12. public AnimalTip()
  13. {
  14. }
  15. public string Name_Tip
  16. {
  17. get { return _name_tip; }
  18. set { _name_tip = value; }
  19. }
  20. public string Inform
  21. {
  22. get { return _inform; }
  23. set { _inform = value; }
  24. }
  25. public string Habbitat
  26. {
  27. get { return _habitat; }
  28. set { _habitat = value; }
  29. }
  30. public virtual void saveFile(string path)
  31. {
  32. using (StreamWriter sw = File.AppendText(path))
  33. {
  34. sw.WriteLine("Тип животного:");
  35. sw.WriteLine(_name_tip);
  36. sw.WriteLine(_inform);
  37. sw.WriteLine(_habitat);
  38. }
  39. }
  40. }
заполнение этого класса
Листинг программы
  1. tipAnimalList.Add(new AnimalTip("Хордовые", "Тип 4300 видов", "Вода, Суша"));
  2. tipAnimalList.Add(new AnimalTip("Членистоноогие", "Тип взятых.", "Вода, Наземно-воздушная, Почва"));
код сохранения в xml файл
Листинг программы
  1. private void SaveToolStripMenuItem_Click(object sender, EventArgs e)
  2. {
  3. if (saveFileDialog1.ShowDialog() == DialogResult.OK)
  4. {
  5. try
  6. {
  7. FileStream stream = new FileStream(this.saveFileDialog1.FileName, FileMode.Create);
  8. XmlSerializer serializer = new XmlSerializer(typeof(AnimalTip));
  9. serializer.Serialize(stream, tipAnimalList);
  10. stream.Close();
  11. }
  12. catch (Exception ex)
  13. {
  14. MessageBox.Show(ex.ToString(), "Ошибка создания файла!");
  15. }
  16. }
  17. }
выдаёт следующую ошибку прошу помощи

Решение задачи: «Сохранение объектов класса в Xml файл»

textual
Листинг программы
  1. private void openToolStripMenuItem_Click(object sender, EventArgs e)
  2.         {
  3.             if (openFileDialog1.ShowDialog() == DialogResult.OK)
  4.             {
  5.                 try
  6.                 {
  7.                     FileStream stream = new FileStream(this.openFileDialog1.FileName, FileMode.Open);
  8.                     XmlSerializer serializer = new XmlSerializer(typeof(List<AnimalTip>));
  9.                     tipAnimalList = serializer.Deserialize(stream) as List<AnimalTip>;
  10.                     XmlSerializer serializer1 = new XmlSerializer(typeof(List<ClassAnimal>));
  11.                     classAnimalList = serializer1.Deserialize(stream) as List<ClassAnimal>;
  12.                     XmlSerializer serializer2 = new XmlSerializer(typeof(List<GroupAnimal>));
  13.                     groupAnimalList = serializer2.Deserialize(stream) as List<GroupAnimal>;
  14.                     XmlSerializer serializer3 = new XmlSerializer(typeof(List<FamilyAnimal>));
  15.                     familyAnimalList = serializer3.Deserialize(stream) as List<FamilyAnimal>;
  16.                     stream.Close();
  17.                     fillingTreeView();
  18.                 }
  19.                 catch (Exception ex)
  20.                 {
  21.                     MessageBox.Show(ex.ToString(), "Ошибка чтения файла!");
  22.                 }
  23.             }
  24.         }

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


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

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

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

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут