Десериализация объекта в массив - C#

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

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

Извиняюсь за беспокойство. Нужна помощь в реализации десериализации объектов в массив. Серриализация и десериализация находятся на разных формах(в разных классах) Код сериализации:
public void WriteXML()
        {
            XmlSerializer writer = new XmlSerializer(typeof(Orders));
            FileStream sw = new FileStream("D:\\Универ\\POP\\Курсовая\\WeddingShop\\Orders\\" + name_file + ".txt", FileMode.Create, FileAccess.ReadWrite);
            StreamWriter file = new StreamWriter(sw);
            for (i = 0; i < kol_vo; i++)
            {
                //Zakaz obj1 = new Zakaz(Katalog_tovara[i], Name_tovara[i], Price_tovara[i], Size_Kol_tov[i]);
                Orders obj1 = new Orders();
                if (this.Katalog_tovara[i] == 'g')
                {
                    obj1.Katalog_tovara = "Платье: ";
                }
                if (this.Katalog_tovara[i] == 'c')
                {
                    obj1.Katalog_tovara = "Костюм: ";
                }
                obj1.Name_tovara = Name_tovara[i];
                obj1.Price_tovara = Price_tovara[i];
                obj1.Size_Kol_tovara = Size_Kol_tov[i];
                writer.Serialize(file, obj1);
            }
            file.Close();
        }
код десериализации:
public void ReadXML()
        {
            XmlSerializer reader = new XmlSerializer(typeof(Order_));
                FileStream fs = new FileStream("F:\\POP\\WeddingShop\\Orders\\" + name_file, FileMode.Open);
                StreamReader file = new StreamReader(fs);//@"c:\temp\SerializationOverview.xml");
                Order_ obj1 = new Order_();
                obj1 = (Order_)reader.Deserialize(file);
}
Класс объекта
public class Order_
    {
        public string Katalog_tovara;
        public string Name_tovara;
        public string Price_tovara;
        public int Size_Kol_tovara;
 
        public Order_()
        {
            Katalog_tovara = "unknown";
            Name_tovara = "unknown";
            Price_tovara = "unknown";
            Size_Kol_tovara = 0;
        }
}
obj1 = (Order_)reader.Deserialize(file); ошибка: В документе XML (2, 2) присутствует ошибка.
Неужели никто не знает!!! О_о

Решение задачи: «Десериализация объекта в массив»

textual
Листинг программы
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfOrders xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Orders>
    <Katalog_t>0</Katalog_t>
    <Name_t>Бусина</Name_t>
    <Price_t>150</Price_t>
    <Size_Kol_t>1</Size_Kol_t>
  </Orders>
  <Orders>
    <Katalog_t>1</Katalog_t>
    <Name_t>Лазурит</Name_t>
    <Price_t>150</Price_t>
    <Size_Kol_t>2</Size_Kol_t>
  </Orders>
</ArrayOfOrders>

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


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

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

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