序列化,将对象转换为二进制
反序列化,将二进制转换为对象
作用:传输数据
实例
将类标记为可以序列化
[Serializable]
public class Person
{
public int ID { get; set; }
public string Name { get; set; }
public int Age { get; set; }
}
序列化和反序列化
Person p = new Person() { ID = 1001, Name = "哈哈", Age = 18 };
//序列化
using (FileStream fs = new FileStream(@"D:\temp.txt", FileMode.OpenOrCreate, FileAccess.Write))
{
BinaryFormatter bf = new BinaryFormatter();
bf.Serialize(fs, p);
}
//反序列化
using (FileStream fs = new FileStream(@"D:\temp.txt", FileMode.OpenOrCreate, FileAccess.Read))
{
BinaryFormatter bf = new BinaryFormatter();
Person person = (Person)bf.Deserialize(fs);
}