VB6各数据类型序列化和反序列化

简介: Private Sub Command1_Click() '序列化 Dim var1 As Byte Dim var2 As Boolean Dim var3 As Integer Dim var4 As Long Dim var5 As Single Dim var6 As Double Dim var7 As String var1 = CByte(Text1.

Private Sub Command1_Click()

'序列化
Dim var1 As Byte
Dim var2 As Boolean
Dim var3 As Integer
Dim var4 As Long
Dim var5 As Single
Dim var6 As Double
Dim var7 As String

var1 = CByte(Text1.Text)
var2 = CBool(Text2.Text)
var3 = CInt(Text3.Text)
var4 = CLng(Text4.Text)
var5 = CSng(Text5.Text)
var6 = CDbl(Text6.Text)
var7 = Text7.Text

Open "c:"aaa.txt" For Binary As #1
Put #1, , var1
Put #1, , var2
Put #1, , var3
Put #1, , var4
Put #1, , var5
Put #1, , var6
Put #1, , var7
Close #1
End Sub

 

Private Sub Command2_Click()

'反序列化
Dim var1 As Byte   '1
Dim var2 As Boolean '2
Dim var3 As Integer '2
Dim var4 As Long '4
Dim var5 As Single '4
Dim var6 As Double '8
Dim var7 As String '变长

Open "c:"aaa.txt" For Binary As #1
Get #1, , var1
Get #1, , var2
Get #1, , var3
Get #1, , var4
Get #1, , var5
Get #1, , var6
var7 = Space(LOF(1) - 21) '变长字符串长度=文件总长度-前面各类型所占长度
Get #1, , var7
Close #1

Label1.Caption = CStr(var1)
Label2.Caption = CStr(var2)
Label3.Caption = CStr(var3)
Label4.Caption = CStr(var4)
Label5.Caption = CStr(var5)
Label6.Caption = CStr(var6)
Label7.Caption = CStr(var7)

End Sub

 

Private Sub Command3_Click()
    '数组序列化和反序列化
    Dim arr()     As Single
    Dim arr1()    As Single
    Dim i     As Long
    Dim j     As Long
    Dim h As Long
    Dim l As Long
    h = 1
    l = 2
    ReDim arr(h, l)
    For i = 0 To l
      For j = 0 To h
            arr(j, i) = 100.1
      Next j
    Next i
   
    Open "c:"aaa.txt" For Binary As #1
    Put #1, , arr
    Close #1
     
    ReDim arr1(h, l)
    Open "c:"aaa.txt" For Binary As #1
    Get #1, , arr1
    Close #1
End Sub

目录
相关文章
|
存储 Java
【IO面试题 四】、介绍一下Java的序列化与反序列化
Java的序列化与反序列化允许对象通过实现Serializable接口转换成字节序列并存储或传输,之后可以通过ObjectInputStream和ObjectOutputStream的方法将这些字节序列恢复成对象。
|
1月前
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
130 1
|
1月前
|
JSON 网络协议 安全
【Java基础】(1)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
147 1
|
5月前
|
存储 Java 编译器
说一说关于序列化/反序列化中的细节问题
我是小假 期待与你的下一次相遇 ~
|
5月前
|
JSON Java 数据库连接
|
6月前
|
存储 安全 IDE
说一说序列化与反序列化中存在的问题
本文详细解析了Java中的序列化机制,包括序列化的概念、实现方式及应用场景。通过Student类的实例演示了对象的序列化与反序列化过程,并分析了`Serializable`接口的作用以及`serialVersionUID`的重要意义。此外,文章还探讨了如何通过自定义`readObject()`方法增强序列化的安全性,以及解决可序列化单例模式中可能产生的多实例问题。最后提供了代码示例和运行结果,帮助读者深入理解序列化的原理与实践技巧。
165 2
|
6月前
|
JSON JavaScript 前端开发
Go语言JSON 序列化与反序列化 -《Go语言实战指南》
本文介绍了 Go 语言中使用 `encoding/json` 包实现 JSON 与数据结构之间的转换。内容涵盖序列化(`Marshal`)和反序列化(`Unmarshal`),包括基本示例、结构体字段标签的使用、控制字段行为的标签(如 `omitempty` 和 `-`)、处理 `map` 和切片、嵌套结构体序列化、反序列化未知结构(使用 `map[string]interface{}`)以及 JSON 数组的解析。最后通过表格总结了序列化与反序列化的方法及类型要求,帮助开发者快速掌握 JSON 数据处理技巧。
|
JSON 数据格式 索引
Python中序列化/反序列化JSON格式的数据
【11月更文挑战第4天】本文介绍了 Python 中使用 `json` 模块进行序列化和反序列化的操作。序列化是指将 Python 对象(如字典、列表)转换为 JSON 字符串,主要使用 `json.dumps` 方法。示例包括基本的字典和列表序列化,以及自定义类的序列化。反序列化则是将 JSON 字符串转换回 Python 对象,使用 `json.loads` 方法。文中还提供了具体的代码示例,展示了如何处理不同类型的 Python 对象。
454 1
|
存储 安全 Java
Java编程中的对象序列化与反序列化
【10月更文挑战第22天】在Java的世界里,对象序列化和反序列化是数据持久化和网络传输的关键技术。本文将带你了解如何在Java中实现对象的序列化与反序列化,并探讨其背后的原理。通过实际代码示例,我们将一步步展示如何将复杂数据结构转换为字节流,以及如何将这些字节流还原为Java对象。文章还将讨论在使用序列化时应注意的安全性问题,以确保你的应用程序既高效又安全。
|
存储 Java
Java编程中的对象序列化与反序列化
【10月更文挑战第9天】在Java的世界里,对象序列化是连接数据持久化与网络通信的桥梁。本文将深入探讨Java对象序列化的机制、实践方法及反序列化过程,通过代码示例揭示其背后的原理。从基础概念到高级应用,我们将一步步揭开序列化技术的神秘面纱,让读者能够掌握这一强大工具,以应对数据存储和传输的挑战。