Серилизация. Как серилизовать несколько списков в один фаил?
Могу запихнуть один лист в файл, а как сохранить несколько листов? Как обращаться к ним по отдельности?
List<string> Lines = new List<string>()
{
"1",
"2",
"3"
};
FileStream fsout = new FileStream("peop.dat",
FileMode.Create, FileAccess.Write);
XmlSerializer serializerout = new XmlSerializer(typeof(List<string>),
new Type[] { typeof(string) });
serializerout.Serialize(fsout, Lines,);
fsout.Close();
List<string> Lines1 = new List<string>();
FileStream fsin = new FileStream("peop.dat", FileMode.Open,
FileAccess.Read);
XmlSerializer serializerin = new XmlSerializer(typeof(List<string>),
new Type[] { typeof(string) });
Lines1 = (List<string>)serializerin.Deserialize(fsin);
fsin.Close();
Ответы (1 шт):
Автор решения: ebw1910
→ Ссылка
List<List<string>> reply = new List<List<string>>();
List<string> Lines = new List<string>()
{
"1",
"2",
"3"
};
List<string> Lines2 = new List<string>()
{
"4",
"5",
"6"
};
reply.Add(Lines);
reply.Add(Lines2);
FileStream fsout = new FileStream("peop.dat",
FileMode.Create, FileAccess.Write);
XmlSerializer serializerout = new XmlSerializer(typeof(List<List<string>>),
new Type[] { typeof(string) });
serializerout.Serialize(fsout, reply);
fsout.Close();
List<List<string>> Lines1 = new List<List<string>>();
FileStream fsin = new FileStream("peop.dat", FileMode.Open,
FileAccess.Read);
XmlSerializer serializerin = new XmlSerializer(typeof(List<List<string>>),
new Type[] { typeof(string) });
Lines1 = (List<List<string>>)serializerin.Deserialize(fsin);
fsin.Close();
Random r = new Random();
return Lines1[1][r.Next(0, Lines.Count)];