序列化和反序列化

来源:互联网 发布:淘宝手机详情加链接 编辑:程序博客网 时间:2024/05/20 01:35
 

序列化:将实例化对象的状态存储到存储介质中(即将对象的状态转换为可保存或传输的格式的过程)。

反序列化:将流转换为对象。

序列化和反序列化的作用:是使数据能够更轻松的被存储和传输。

序列化实现的三个步骤:

1创建文件流

Filestream  fs=new Filestream(“文件名.bin”,FileMode.Create);

备注:bin表示转换成二进制形式,create 表示:被创建的文件将覆盖原有文件的内容。

2设置二进制格式

Binaryformatter bf=new Binaryformatter();

备注:Binaryformatter:要序列化一个对象首先设置该对象类是可序列化的,然后序列化为二进制或XML数据

Binaryformatter:使用二进制格式化程序进行序列化的。您只需创建一个可以使用的流和格式化程序的实例。然后调用格式化程序的serializa方法,然后流和要序列化的对象实例作为参数提供给此进行调用,类中所有的成员变量都将被序列化。

[seralizable]主要用于来告诉系统,这个类是可以被序列化的,seralizable是可序列化特性。

binaryformatter 的deserialize 方法将存储介质的数据文件流转化为object,在进行进一步的类型转换。

程序集:

在bin文件夹中的debug文件夹下会生成一个.exe文件,这个编译好的文件就是程序集。

程序集结构:

程序集由四个元素组成:

(1) 程序集清单,包含程序集元数据。

(2)类型元数据。

(3)实现这些类型的Microsoft中间语言(MSIL)代码。

(4)资源集。

原创粉丝点击