美文网首页
文件序列化

文件序列化

作者: 10点睡7点起 | 来源:发表于2018-04-30 21:31 被阅读0次

序列化与反序列化

  • 序列化用途:

    • 将内存中的字典、列表、集合以及各种对象保存到文件中
    • 将自己定义的类实例,保存到文件中
  • 反序列化用途:

    • 从文件中读取数据,并让它们在内容中变成自己对应的类的实例
  • 序列化:根据设定的协议,将内存对象转换成特定的字节流

    • 持久化:将字节流存在文件中
  • 反序列化:根据设定的协议,将一个特定的字节流恢复到内存中

  • 注:序列化、反序列化必须保证使用同一套的定义,否则会造成错误

pickle模块

  • Python中的序列化、反序列化模块
  • pickle.dumps(obj): 将obj序列化成一个字节流
  • pickle.dump(obj, fileobj): 将obj对象序列化后存储在file中
  • pickle.loads(bytes): 将一个字节流反序列化
  • pickle.load(fileobj): 从文本中获取字节流后反序列化
  • pickle模块只可以在Python程序之间完成序列化与反序列化,为了完成跨平台、跨语言操作,有XML/json/protocol buffer/messagePack

json模块

  • 值:双引号引起来的字符串,数值,bool值,null,对象,数组
    • 字符串:有双引号包围起来的任意字符的组合,可以有转义字符
    • 数值:正负数、整数、浮点数
    • 对象:无序的键值对的集合,其中
      • key必须是一个字符串,双引号包围的字符串
      • value可以是任意合法的数值
    • 数组:有组值的集合
  • json支持的操作与pickle一致

MessagePack模块

  • 安装:pip install magpack-python
  • 使用:import msgpack
    • 模块方法与pickle一致

相关文章

  • 序列化python对象

    pickle.dump 序列化至文件 pickle.load 从文件反序列化 pickle.dumps 序列化至字...

  • Protobuf的序列化与反序列化

    Protobuf的序列化与反序列化 proto.proto文件内容 Java 实现 序列化 反序列化 GO 实现 ...

  • Python学习打call第二十六天:序列化与反序列化

    1.什么是序列化与反序列化? 序列化:将内存中的数据转换为字节序列保存到文件; 反序列化:将字节序列的文件中的内容...

  • Java 序列化

    1. Java 原生序列化 序列化:把内存中数据写入文件中 反序列化:从文件中读取数据到内存中 使用流传输对象的过...

  • 文件序列化

    序列化与反序列化 序列化用途:将内存中的字典、列表、集合以及各种对象保存到文件中将自己定义的类实例,保存到文件中 ...

  • 37:序列化二叉树

    题目37:序列化二叉树 请实现两个函数,分别用来序列化和反序列化二叉树。将树写入一个文件被称为“序列化”,读取文件...

  • Jboss/weblogic/XXE

    一.本文介绍 1、本文介绍boss反序列化合webshell、Weblogic反序列化、文件上传漏洞实验、反序列化...

  • 剑指offer - 序列化二叉树

    题目 请实现两个函数,分别序列化和反序列化二叉树。这里的序列化指的是将一棵二叉树保存到文件中,反序列化就是从文件中...

  • Java初学者常见问题_字符串序列化_可变不可变_传递(值,引用

    序列化, 把对象转换成二进制(字节序列)存到文件中就是序列化 反序列化, 把文件中的二进制(字节序列)对象恢复到类...

  • iOS数据本地持久化方法

    plist文件(序列化)plist文件(属性列表) preference(偏好设置) NSKeyedArchive...

网友评论

      本文标题:文件序列化

      本文链接:https://www.haomeiwen.com/subject/aoetrftx.html