List<Class> list=new List<Class>();
注意:在c#序列化和反序列化中,在定义Class类时,需要在前面加[Serializable],如:[Serializable] public class Class{}
序列化:
SaveFileDialog save = new SaveFileDialog();
save.FileName = "Works";
if (save.ShowDialog() == DialogResult.OK)
{
FileStream fileStream = new FileStream(save.FileName + ".gra", FileMode.Create);
BinaryFormatter b = new BinaryFormatter();
b.Serialize(fileStream, list);
fileStream.Close();
}
反序列化:
OpenFileDialog open = new OpenFileDialog();
if (open.ShowDialog() == DialogResult.OK)
{
FileStream fileStream = new FileStream(open.FileName, FileMode.Open, FileAccess.Read, FileShare.Read);
BinaryFormatter b = new BinaryFormatter();
list = (List<Class>)b.Deserialize(fileStream);
fileStream.Close();
}