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

目录
相关文章
|
4月前
|
存储 Java
【IO面试题 四】、介绍一下Java的序列化与反序列化
Java的序列化与反序列化允许对象通过实现Serializable接口转换成字节序列并存储或传输,之后可以通过ObjectInputStream和ObjectOutputStream的方法将这些字节序列恢复成对象。
|
4月前
|
存储 开发框架 .NET
解锁SqlSugar新境界:利用Serialize.Linq实现Lambda表达式灵活序列化与反序列化,赋能动态数据查询新高度!
【8月更文挑战第3天】随着软件开发复杂度提升,数据查询的灵活性变得至关重要。SqlSugar作为一款轻量级、高性能的.NET ORM框架,简化了数据库操作。但在需要跨服务共享查询逻辑时,直接传递Lambda表达式不可行。这时,Serialize.Linq库大显身手,能将Linq表达式序列化为字符串,实现在不同服务间传输查询逻辑。结合使用SqlSugar和Serialize.Linq,不仅能够保持代码清晰,还能实现复杂的动态查询逻辑,极大地增强了应用程序的灵活性和可扩展性。
151 2
|
1月前
|
JSON 数据格式 索引
Python中序列化/反序列化JSON格式的数据
【11月更文挑战第4天】本文介绍了 Python 中使用 `json` 模块进行序列化和反序列化的操作。序列化是指将 Python 对象(如字典、列表)转换为 JSON 字符串,主要使用 `json.dumps` 方法。示例包括基本的字典和列表序列化,以及自定义类的序列化。反序列化则是将 JSON 字符串转换回 Python 对象,使用 `json.loads` 方法。文中还提供了具体的代码示例,展示了如何处理不同类型的 Python 对象。
|
1月前
|
存储 安全 Java
Java编程中的对象序列化与反序列化
【10月更文挑战第22天】在Java的世界里,对象序列化和反序列化是数据持久化和网络传输的关键技术。本文将带你了解如何在Java中实现对象的序列化与反序列化,并探讨其背后的原理。通过实际代码示例,我们将一步步展示如何将复杂数据结构转换为字节流,以及如何将这些字节流还原为Java对象。文章还将讨论在使用序列化时应注意的安全性问题,以确保你的应用程序既高效又安全。
|
2月前
|
存储 Java
Java编程中的对象序列化与反序列化
【10月更文挑战第9天】在Java的世界里,对象序列化是连接数据持久化与网络通信的桥梁。本文将深入探讨Java对象序列化的机制、实践方法及反序列化过程,通过代码示例揭示其背后的原理。从基础概念到高级应用,我们将一步步揭开序列化技术的神秘面纱,让读者能够掌握这一强大工具,以应对数据存储和传输的挑战。
|
2月前
|
存储 安全 Java
Java编程中的对象序列化与反序列化
【10月更文挑战第3天】在Java编程的世界里,对象序列化与反序列化是实现数据持久化和网络传输的关键技术。本文将深入探讨Java序列化的原理、应用场景以及如何通过代码示例实现对象的序列化与反序列化过程。从基础概念到实践操作,我们将一步步揭示这一技术的魅力所在。
|
1月前
|
存储 缓存 NoSQL
一篇搞懂!Java对象序列化与反序列化的底层逻辑
本文介绍了Java中的序列化与反序列化,包括基本概念、应用场景、实现方式及注意事项。序列化是将对象转换为字节流,便于存储和传输;反序列化则是将字节流还原为对象。文中详细讲解了实现序列化的步骤,以及常见的反序列化失败原因和最佳实践。通过实例和代码示例,帮助读者更好地理解和应用这一重要技术。
35 0
|
3月前
|
JSON 安全 编译器
扩展类实例的序列化和反序列化
扩展类实例的序列化和反序列化
39 1
|
3月前
|
JSON fastjson Java
niubility!即使JavaBean没有默认无参构造器,fastjson也可以反序列化。- - - - 阿里Fastjson反序列化源码分析
本文详细分析了 Fastjson 反序列化对象的源码(版本 fastjson-1.2.60),揭示了即使 JavaBean 沲有默认无参构造器,Fastjson 仍能正常反序列化的技术内幕。文章通过案例展示了 Fastjson 在不同构造器情况下的行为,并深入探讨了 `ParserConfig#getDeserializer` 方法的核心逻辑。此外,还介绍了 ASM 字节码技术的应用及其在反序列化过程中的角色。
90 10
|
3月前
|
存储 XML JSON
用示例说明序列化和反序列化
用示例说明序列化和反序列化
21 1