VB.NET集合存储内容解析
创始人
2024-06-21 01:00:32
0

今天在这里,大家会详细了解到有关VB.NET集合存储的相关应用方法,希望能对大家有所帮助。大多数程序处理对象集合而不是单个的对象。对于集合数据,首先创建一个数组(或者是其他类型的集合,比如ArrayList或HashTable),用对象填充,然后一个Serialize方法就可以序列化这个集合,是不是很简单?下面的例子,首先创建一个有两个Person对象的ArrayList,然后序列化本身:

  1. Dim FS As New System.IO.FileStream _  
  2. ("c:\test.txt", IO.FileMode.Create)  
  3. Dim BinFormatter As New Binary
    .BinaryFormatter()  
  4. Dim P As New Person()  
  5. Dim Persons As New ArrayList  
  6. P = New Person()  
  7. P.Name = "Person 1" 
  8. P.Age = 35 
  9. P.Income = 32000 
  10. Persons.Add(P)  
  11. P = New Person()  
  12. P.Name = "Person 2" 
  13. P.Age = 50 
  14. P.Income = 72000 
  15. Persons.Add(P)  
  16. BinFormatter.Serialize(FS, Persons) 

以VB.NET集合存储序列化数据的文件为参数,调用一个BinaryFormatter实例的Deserialize方法,就会返回一个对象,然后把它转化为合适的类型。下面的代码反序列化文件中的所有对象,然后处理所有的Person对象:

  1. FS = New System.IO.FileStream _  
  2. ("c:\test.txt", IO.FileMode.
    OpenOrCreate)  
  3. Dim obj As Object  
  4. Dim P As Person(), R As
     Rectangle()  
  5. Do  
  6. obj = BinFormatter.
    Deserialize(FS)  
  7. If obj.GetType Is GetType
    (Person) Then  
  8. P = CType(obj, Person)  
  9. ' Process the P objext  
  10. End If  
  11. Loop While FS.Position 
    < FS.Length - 1  
  12. FS.Close() 

下面的例子调用Deserialize方法反序列化这个集合,然后把返回值转换为合适的类型(Person):

  1. FS = New System.IO.FileStream
    ("c:\test.txt", IO.FileMode.
    OpenOrCreate)  
  2. Dim obj As Object  
  3. Dim Persons As New ArrayList  
  4. obj = CType(BinFormatter.
    Deserialize(FS), ArrayList)  
  5. FS.Close() 

VB.NET集合存储的相关方法就为大家介绍到这里。

【编辑推荐】

  1. VB.NET对象存储各种方法简介
  2. VB.NET读写文本文件具体代码编写方式介绍
  3. VB.NET调用DLL实现方法解析
  4. 如何正确实现VB.NET重载Windows控件
  5. 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 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...