Серилизация. Как серилизовать несколько списков в один фаил?

Могу запихнуть один лист в файл, а как сохранить несколько листов? Как обращаться к ним по отдельности?

 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)];
→ Ссылка