.NET 序列化与程序集详解
1. 显式序列化
当客户端需要将复杂的对象图序列化到磁盘文件时,若对象已支持序列化,客户端需两个关键要素来启动显式序列化:标识对象图根的对象引用,以及标识序列化目标位置的流引用。
为实现序列化和反序列化,框架定义了 IFormatter 标准接口,提供了 Serialize 和 Deserialize 方法。框架还提供了该接口的两个具体实现类:
- BinaryFormatter :位于 System.Runtime.Serialization.Formatters.Binary 命名空间,使用二进制格式序列化对象图。
- SoapFormatter :位于 System.Runtime.Serialization.Formatters.Soap 命名空间,使用 SOAP 第 5 节编码规则将对象图序列化为 XML。
以下是使用 BinaryFormatter 进行序列化的示例代码:
public void SerializeGraph(string file, object root) {
Stream stm = new FileStream(file, FileMode.Create);
IFormatter fmt = new BinaryFormatter();
fmt.Seriali
超级会员免费看
订阅专栏 解锁全文
611

被折叠的 条评论
为什么被折叠?



