Сохранение объектов класса в Xml файл - C#
Формулировка задачи:
нужно сохранить значение классов в xml файл
описание одного из классов
заполнение этого класса
код сохранения в xml файл
выдаёт следующую ошибку
прошу помощи
class AnimalTip { private string _name_tip; //название типа private string _inform; //инфо о типе private string _habitat; //среда обитания public AnimalTip(string name_tip, string inform, string habitat) { _name_tip = name_tip; _inform = inform; _habitat = habitat; } public AnimalTip() { } public string Name_Tip { get { return _name_tip; } set { _name_tip = value; } } public string Inform { get { return _inform; } set { _inform = value; } } public string Habbitat { get { return _habitat; } set { _habitat = value; } } public virtual void saveFile(string path) { using (StreamWriter sw = File.AppendText(path)) { sw.WriteLine("Тип животного:"); sw.WriteLine(_name_tip); sw.WriteLine(_inform); sw.WriteLine(_habitat); } } }
tipAnimalList.Add(new AnimalTip("Хордовые", "Тип 4300 видов", "Вода, Суша")); tipAnimalList.Add(new AnimalTip("Членистоноогие", "Тип взятых.", "Вода, Наземно-воздушная, Почва"));
private void SaveToolStripMenuItem_Click(object sender, EventArgs e) { if (saveFileDialog1.ShowDialog() == DialogResult.OK) { try { FileStream stream = new FileStream(this.saveFileDialog1.FileName, FileMode.Create); XmlSerializer serializer = new XmlSerializer(typeof(AnimalTip)); serializer.Serialize(stream, tipAnimalList); stream.Close(); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Ошибка создания файла!"); } } }
Решение задачи: «Сохранение объектов класса в Xml файл»
textual
Листинг программы
private void openToolStripMenuItem_Click(object sender, EventArgs e) { if (openFileDialog1.ShowDialog() == DialogResult.OK) { try { FileStream stream = new FileStream(this.openFileDialog1.FileName, FileMode.Open); XmlSerializer serializer = new XmlSerializer(typeof(List<AnimalTip>)); tipAnimalList = serializer.Deserialize(stream) as List<AnimalTip>; XmlSerializer serializer1 = new XmlSerializer(typeof(List<ClassAnimal>)); classAnimalList = serializer1.Deserialize(stream) as List<ClassAnimal>; XmlSerializer serializer2 = new XmlSerializer(typeof(List<GroupAnimal>)); groupAnimalList = serializer2.Deserialize(stream) as List<GroupAnimal>; XmlSerializer serializer3 = new XmlSerializer(typeof(List<FamilyAnimal>)); familyAnimalList = serializer3.Deserialize(stream) as List<FamilyAnimal>; stream.Close(); fillingTreeView(); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Ошибка чтения файла!"); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д