阅读量:3
C#二进制流序列化和反序列化
在C#中,可以使用BinaryFormatter来进行二进制的序列化和反序列化。
首先,定义一个可序列化的类
[Serializable] public class MyObject { public int IntProperty { get; set; } public string StringProperty { get; set; } }
使用BinaryFormatter
进行序列化和反序列化
序列化Serialize
MyObject Object= new MyObject(){}; // 创键要存储的对象 // 1 创建文件流 FileStream fs = new FileStream(@"1.txt",FileMode.Create); // 2 创建一个二进制序列化格式器 (Binary 二进制 Formatter 格式化) BinaryFormatter bf = new BinaryFormatter(); // 3 调用序列化方法 serialize() 解析 p1对象 存入fs文件流里面 bf.Serialize(fs, Object); // 4 关闭文件流 fs.Close();
反序列化Deserialize
// 1 创建文件流 FileStream fs = new FileStream(@"1.txt",FileMode.Open); // 2 创建序列化格式 BinaryFormatter bf = new BinaryFormatter(); // 3 调用反序列化方法 MyObject Object = bf.Deserialize(fs) as MyObject; // 4 关闭文件流 fs.Close();