[VB.NET]串行化数据

前端之家收集整理的这篇文章主要介绍了[VB.NET]串行化数据前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
串行化数据

实例说明@H_404_1@

在本实例中,我们将利用VB.NET向大家展示一个串行化数据的实例。程序运行结果如图55-1所示。@H_404_1@

图55-1 运行结果@H_404_1@

技术要点@H_404_1@

l 串行化的概念@H_404_1@

l 进行读写操作@H_404_1@

实现过程@H_404_1@

■ 新建项目@H_404_1@

打开Visual Studio.NET,选择"新建项目",在项目类型窗口中选择"Visual Basic项目",在模板窗口中选择"类库",在名称域中输入"SerializeTest",然后选择保存路径。单击"确认"。@H_404_1@

添加代码@H_404_1@

Imports System@H_404_1@

Imports System.IO@H_404_1@

Imports System.Collections@H_404_1@

Imports System.Runtime.Serialization@H_404_1@

Imports System.Runtime.Serialization.Formatters.Binary@H_404_1@

Namespace ClassLibrary1@H_404_1@

Public Class SerializeTest@H_404_1@

Public Shared Sub Main()@H_404_1@

Console.WriteLine("Create object graph")@H_404_1@

Dim l As New ArrayList@H_404_1@

Dim x As Integer@H_404_1@

For x = 0 To 9@H_404_1@

Console.WriteLine(x)@H_404_1@

l.Add(x)@H_404_1@

Next x@H_404_1@

Console.Write("Serializing object graph to disk..")@H_404_1@

Dim s As Stream = File.Open("foo.bin",FileMode.Create,FileAccess.ReadWrite)@H_404_1@

Dim b As BinaryFormatter = New BinaryFormatter@H_404_1@

b.Serialize(s,l)@H_404_1@

s.Close()@H_404_1@

Console.WriteLine("Complete.")@H_404_1@

Console.Write("Deserializing object graph from disk..")@H_404_1@

Dim r As Stream = File.Open("foo.bin",FileMode.Open,FileAccess.Read)@H_404_1@

Dim c As New BinaryFormatter@H_404_1@

Dim p As ArrayList = CType(c.Deserialize(r),ArrayList)@H_404_1@

Console.WriteLine("Complete.")@H_404_1@

Dim i As Object@H_404_1@

For Each i In p@H_404_1@

Console.WriteLine(i)@H_404_1@

Next i@H_404_1@

r.Close()@H_404_1@

Console.WriteLine(Microsoft.VisualBasic.ControlChars.CrLf & "Press Return to exit.")@H_404_1@

Console.Read()@H_404_1@

End Sub@H_404_1@

End Class@H_404_1@

End Namespace@H_404_1@

■ 运行程序@H_404_1@

单击菜单"调试|启动"或单击 图标运行程序。@H_404_1@

小结@H_404_1@

串行化是把图式对象转换成为线性字节串行的过程。字节序列可以发送到别处,例如远程计算机,然后执行序列解码,这样就在远程主机内存中生成了原来图式对象的克隆。串行化过程在VB.NET中是十分容易使用的,而且是开放的,每个VB6的程序员都曾经自觉或不自觉地使用过串行化。当任何ActiveX dll或者ActiveX exe被创建后,都有五个属性可以设置,最后一个Persistable属性就是VB6中的串行化。VB6中串行化的过程不需要用户认知,大部分开发人员也从来不管串行化做了什么和如何运作。在VB.NET中,有着公共对象库,每个支持.NET体系的语言都可以通过System.Runtime.Serialization的名字空间来理解和使用VB.NET的串行化特征。@H_404_1@

串行化可以替代任何流,象MemoryStream,NetStream等,而不仅仅是FileStream@H_404_1@ 原文链接:https://www.f2er.com/vb/264331.html

猜你在找的VB相关文章