分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 教程案例

.net实现序列化与反序列化实例解析

发布时间:2023-09-06 01:24责任编辑:熊小新关键词:暂无标签

序列化与反序列化是.net程序设计中常见的应用,本文即以实例展示了.net实现序列化与反序列化的方法。具体如下:

一般来说,.net中的

序列化其实就是将一个对象的所有相关的数据保存为一个二进制文件

(注意:是一个对象)


而且与这个对象相关的所有类型都必须是可序列化的所以要在相关类中加上 [Serializable]特性

对象类型包括:对象本身包含的类型,父类


拥有需要的对象之后:

1.将对象转换为二进制数据 使用专门的对像进行转换 BinaryFormatter

2.将二进制数据写入到文件 FileSteam


反序列化则是把二进制文件转换为一个对象

示例代码如下所示:

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.IO;using System.Runtime.Serialization.Formatters.Binary;namespace ConsoleApplication1{ ?class Program ?{ ???static void Main(string[] args) ???{ ?????Person per;//将要被序列化的对象 ?????Console.WriteLine("------序列化与反序列化------"); ?????Console.WriteLine("是否读取已经序列化的对象per"); ?????string str = Console.ReadLine(); ?????if (str == "yes") ?????{ ???????if (!File.Exists("save.bin")) ???????{ ?????????Console.WriteLine("你还没有将per序列化"); ?????????return; ???????} ???????using (FileStream fs = new FileStream("save.bin", FileMode.Open)) ???????{ ?????????BinaryFormatter bf = new BinaryFormatter(); ?????????per = bf.Deserialize(fs) as Person;//将二进制数据转换为per对象 ?????????per.SayHi(); ?????????Console.ReadLine(); ???????} ?????} ?????else ?????{ ???????per = new Person(); ???????per.Name = "小李"; ???????using(FileStream fs=new FileStream("save.bin",FileMode.Create)) ???????{ ?????????BinaryFormatter bf = new BinaryFormatter(); ?????????bf.Serialize(fs,per);//将per对象转换成二进制数据,并保存。 ?????????Console.WriteLine("序列化成功"); ?????????Console.ReadLine(); ???????} ?????} ???} ?} ?[Serializable] ?class Person ?{ ???public string Name; ???public void SayHi() ???{ ?????Console.WriteLine("hello {0}",Name); ???} ?}}

相信本文实例对于大家进一步理解.net的序列化与反序列化有一定的借鉴帮助作用。

除声明外,跑步客文章均为原创,转载请以链接形式标明本文地址
  .net实现序列化与反序列化实例解析

本文地址:  http://www.paobuke.com/develop/c-develop/pbk23656.html


??????
???



相关内容

C#事件实例详解
C# for循环的经典案例集锦
C#实例代码之抽奖升级版可以经表格数据导入数据库,抽奖设置,补抽
C#编程和Visual Studio使用技巧(下)

C#中图片旋转和翻转(RotateFlipType)用法分析
C#实现百分比转小数的方法
C#使用Socket上传并保存图片的方法
C#显示文件夹下所有图片文件的方法

.net实现序列化与反序列化实例解析

原文地址:http://www.cnblogs.com/paobuke/p/7828160.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved