Десериализация объекта в массив - C#
Формулировка задачи:
Извиняюсь за беспокойство. Нужна помощь в реализации десериализации объектов в массив.
Серриализация и десериализация находятся на разных формах(в разных классах)
Код сериализации:
код десериализации:
Класс объекта
obj1 = (Order_)reader.Deserialize(file); ошибка: В документе XML (2, 2) присутствует ошибка.
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;
}
}
Неужели никто не знает!!! О_о
Решение задачи: «Десериализация объекта в массив»
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>