【发布时间】:2021-03-23 11:29:40
【问题描述】:
我可以将一张纸塞进一个文件,但我怎样才能保存几张纸呢?如何单独引用它们?
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();
【问题讨论】:
-
最简单的方法是序列化
Dictionary<string, List<string>>,这样您就可以按键引用列表。或者只是List<List<string>>并使用索引。但理想情况下,您需要创建一个包含所有数据的类型(在您的情况下包含多个List<string>属性),您需要存储/恢复(最好具有版本控制和向后兼容性)并序列化/反序列化该实例。
标签: c# list serialization deserialization