欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【C#】序列化和反序列化

程序员文章站 2022-06-16 08:14:08
...

序列化,将对象转换为二进制

反序列化,将二进制转换为对象

作用:传输数据
 

 

实例

将类标记为可以序列化

[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);
}