Запись и считывание массива структур (документ XML) - C#
Формулировка задачи:
Есть задание:
Ресторан содержит список блюд. Создайте массив структур «Блюда», структура содержит идентификационный номер блюда, наименование, количество грамм, стоимость. Добавьте программно 3 записи. Организуйте возможность добавления записи в структуру и вывод данных по запросу.
Вся проблема у меня в том, что я не умею работать с документам XML, я могу реализовать массив структур, но как считывать и записывать в документ XML я не знаю, помогите пожалуйста, буду признателен.
Решение задачи: «Запись и считывание массива структур (документ XML)»
textual
Листинг программы
using System; using System.Collections.Generic; using System.IO; using System.Xml.Serialization; class Program { static void Main() { List<Dish> menu = new List<Dish>{new Dish { Id = 0, Name = "A", Grams = 5, Price = 100 }, new Dish { Id = 1, Name = "B", Grams = 6, Price = 200 }, new Dish { Id = 2, Name = "C", Grams = 3, Price = 150 }}; // Записали данные в xml (и создали файл заодно) string pathToXml = @"D:\data.xml"; XmlSerializer serializer = new XmlSerializer(typeof(List<Dish>)); using (StreamWriter sw = new StreamWriter(pathToXml)) serializer.Serialize(sw, menu); // Считали данные из xml List<Dish> menu2 = new List<Dish>(); using (FileStream fs = new FileStream(pathToXml, FileMode.Open)) menu2 = (List<Dish>)serializer.Deserialize(fs); foreach (Dish f in menu2) Console.WriteLine("{0} {1} {2} {3}", f.Id, f.Name, f.Price, f.Grams); Console.ReadKey(); } } [Serializable] public struct Dish { public int Id; public string Name; public int Grams; public int Price; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д