VB.NET序列化实现方式简单介绍
创始人
2024-06-20 07:00:23
0

序列化在编程人员眼中是一个即重要又比较难以掌握的知识点。我们会为大家以一个最简单的例子对VB.NET序列化做一个详细的介绍。希望可以帮助初学者们初步的掌握这方面的知识点,增加理解程度。#t#

序列化的基本方式:将对象送给Formatter,Formatter将其序列化之后会形成一个流。这个流可以是文件流,或者其他的。

在这里,我们将一个随机生成的数组进行二进制序列化,并保存到文件;然后把它从文件当中取出,进行反序列化重新得到这个数组。

首先是定义数组:

  1. Dim nums(10) As Integer 

然后是生成数组内容:

  1. Dim i As Integer  
  2. For i = 0 To 10  
  3. nums(i) = Int(Rnd() 
    * 500) + 100  
  4. Next 

VB.NET序列化是通过Formatter对象来实现的。我们要新建一个Formatter对象:

  1. Dim sfFormatter As New 
    System.Runtime.Serialization.
    Formatters.Binary.BinaryFormatter 

BinaryFormatter是进行二进制序列化的。其它的序列化方式你可以在Runtime.Serialization.Formatters中找到。

我们还要有一个流来作为序列化的输出:

  1. Dim fStream As New 
    FileStream(“1.dat”, 
    FileMode.Create) 

准备工作完了,现在可以调用Formatter的Serialize方法来进行序列化了:

  1. sfFormatter.Serialize
    (fStream, nums) 

VB.NET序列化的***不要忘了关闭流:

  1. fStream.Close() 

反序列化的方式大同小异,只不过调用的是Formatter的Deserialize方法。代码是这样的:

  1. Private Sub Deserialize()  
  2. Dim fStream As New FileStream
    (“1.dat”, FileMode.Open)  
  3. Dim sfFormatter As New System.
    Runtime.Serialization.Formatters.
    Binary.BinaryFormatter  
  4. nums = sfFormatter.Deserialize
    (fStream)  
  5. fStream.Close()  
  6. End Sub 

 

VB.NET序列化就这么简单。这里只是序列化整数数组。如果你要对自定义类的对象进行序列化,你需要在类的定义前面加上:

  1. < Serializable()>  

对于VB.NET序列化还有更高级的应用,比方你可以指定类中的哪些成员不能被序列化,以及定义自己的序列化接口。本文到此为止。

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...