随笔 - 1330  文章 - 1  评论 - 378  阅读 - 482万 
序列化是将对象状态转换为可保持或传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,就使得数据能够被轻松地存储和传输。
序列化简单点来理解就是把内存的东西写到硬盘中,当然也可以写到内存中(这个内容我会在后面写一个例子).而反序列化就是从硬盘中把信息读到内存中.就这么简单,呵呵
序列化和反序列化用于将一个对象保存到文件,从文件读取:
using   System.IO;   
  
using   System.Runtime.Serialization.Formatters.Binary;   
  [Serializable()]
//可以序列化的类需要用这个属性标记   
  public   class   ToBeSerialized   
  
{   
  
public   int   a;   
  
public   string   b;   
  
public   ToBeSerialized(int   a,string   b)   
  
{   
  
this.a=a;   
  
this.b=b;   
  }
   
  }
   
  
public   class   Test   
  
{   
    
  
public   void   Serialize()//序列化   
  {   
  ToBeSerialized   tbs 
= new   ToBeSerialized(22,"SOM");   
  Stream   fs   
=   File.Create("Serialized.txt");   
  BinaryFormatter   serializer   
=   new   BinaryFormatter();   
  serializer.Serialize(fs,   tbs);   
  fs.Close();   
  }
   
  
public   void   DeSerialize()//反序列化   
  {   
  ToBeSerialized   restore;   
  Stream   fs   
=   File.OpenRead("Serialized.txt");   
  BinaryFormatter   deserializer   
=   new   BinaryFormatter();   
  restore   
=   (ToBeSerialized)(deserializer.Deserialize(fs));//反序列化得到的对象   
  fs.Close();   
  }
   
    
  }
posted on   钱途无梁  阅读(246)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示