解析.net框架下的序列化机制

解析.net框架下的序列化机制

ID:14468543

大小:46.00 KB

页数:16页

时间:2018-07-28

解析.net框架下的序列化机制_第1页
解析.net框架下的序列化机制_第2页
解析.net框架下的序列化机制_第3页
解析.net框架下的序列化机制_第4页
解析.net框架下的序列化机制_第5页
资源描述:

《解析.net框架下的序列化机制》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、解析.Net框架下的序列化机制解析.Net框架下的序列化机制2003-02-19··王凯明··yesky123下一页  程序员在编写应用程序的时候往往要将程序的某些数据存储在内存中,然后将其写入某个文件或是将它传输到网络中的另一台计算机上以实现通讯。这个将程序数据转化成能被存储并传输的格式的过程被称为"序列化"(Serialization),而它的逆过程则可被称为"反序列化"(Deserialization)。  .Net框架对序列化机制具有非常好的支持,它提供了两个名字空间(namespace):System.Runtime.Serialization和S

2、ystem.Runtime.Serialization.Formatters以完成序列化机制的大部分功能。系列化这项技术可以应用在将程序产生的结果数据存储到文件系统中,但是它更主要的应用是在于.NetRemoting和Web服务的实现上。  序列化机制的实现是依靠格式器(Formatter)而完成的,它是一个从System.Runtime.Serialization.IFormatter继承下来的类的对象。格式器完成了将程序数据转化到能被存储并传输的格式的工作,同时也完成了将数据转化回来的工作。.Net框架为程序员提供了两种类型的格式器,一种通常是应用于桌面

3、类型的应用程序的,它一个是System.Runtime.Serialization.Formatters.Binary.BinaryFormatter类的对象,而另一种则更主要的应用于.NetRemoting和XMLWeb服务等领域的,它一个是System.Runtime.Serialization.Formatters.Soap.SoapFormatter类的对象。从它们的名称来看,我们不妨将它们分别称为二进制格式器和XML格式器。  本文将从这两个格式器入手,先向大家介绍分别用它们如何实现序列化和反序列化,然后比较两种格式器的不同点。接着我会向大家介绍实

4、现序列化对对象类型的一些要求,同时还要向大家介绍两种不同的序列化方式:基本序列化(BasicSerialization)和自定义序列化(CustomSerialization)。最后,我还会给大家介绍一个实例程序以加深大家对序列化机制的理解程度。  一.二进制格式器(BinaryFormatter)vsXML格式器(XMLFormatter):  下面我先向大家介绍两种不同的格式器,分别用它们如何实现序列化机制和反序列化机制,请看下面的代码:#regionBinarySerializerspublicstaticSystem.IO.MemoryStreamS

5、erializeBinary(objectrequest){ System.Runtime.Serialization.Formatters.Binary.BinaryFormatterserializer=  newSystem.Runtime.Serialization.Formatters.Binary.BinaryFormatter(); System.IO.MemoryStreammemStream=newSystem.IO.MemoryStream(); serializer.Serialize(memStream,request); retur

6、nmemStream;}publicstaticobjectDeSerializeBinary(System.IO.MemoryStreammemStream){ memStream.Position=0; System.Runtime.Serialization.Formatters.Binary.BinaryFormatterdeserializer=  newSystem.Runtime.Serialization.Formatters.Binary.BinaryFormatter(); objectnewobj=deserializer.Deseri

7、alize(memStream); memStream.Close(); returnnewobj;}#endregion#regionXMLSerializerspublicstaticSystem.IO.MemoryStreamSerializeSOAP(objectrequest){ System.Runtime.Serialization.Formatters.Soap.SoapFormatterserializer=  newSystem.Runtime.Serialization.Formatters.Soap.SoapFormatter(); 

8、System.IO.MemoryStreammemS

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。