C# 序列号和反序列化
序列化是将对象在内存中的2进制数据写入到bin文件中,这个操作就需要引入命名空间using System.Runtime.Serialization.Formatters.Binary;以下是序列化和反序列化代码 序列化代码: /// <summary>/// 保存配置文件/// </summary>public void SaveFile(){首先将数据保存到作临时存储用的泛型中manager.Temp.Clear();foreach (TreeNode node in this.tvSongList.Nodes){List<SongInfo> songList = node.Tag as List<SongInfo>;Temp temp = new Temp();temp.TreeNodeName = node.Text;temp.SongList = songList;manager.Temp.Add(temp);}打开文件流,创建BinaryFormatter对象调用BinaryFormatter对象的Serialize方法,传入两个参数(文件流对象,需要序列化的对象)因为序列化的时候需要用到文件流,因为使用文件流时可能出现异常,所以用try{}catch{}检测异常try{FileStream fs = new FileStream(@"save.bin", FileMode.Create);BinaryFormatter bf = new BinaryFormatter();bf.Serialize(fs, manager);fs.Close();}catch (Exception){return;}}反序列化代码:创建文件流,创建BinaryFormatter对象调用BinaryFormatter对象的Deserialize方法,传入参数(文件流对象)将需要Deserialize的返回值强制转换,然后赋值给需要反序列化的对象 因为序列化的时候需要用到文件流,因为使用文件流时可能出现异常,所以用try{}catch{}检测异常
try{FileStream fs = new FileStream(@"save.bin", FileMode.Open);BinaryFormatter bf = new BinaryFormatter();this.manager = (SongManager)bf.Deserialize(fs);fs.Close();}catch (Exception){return;}
转载于:https://www.cnblogs.com/BrightMoon/archive/2013/02/24/2924262.html
C# 序列号和反序列化相关推荐
- 面试:什么是序列化,怎么序列化,为什么序列化,反序列化会遇到什么问题,如何解决?...
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | riemann_ 来源 | blog.csdn ...
- php 传递类名,php 对象和数组序列化 serialize()返回字符串方便存储和传递 unserialize()反序列化 不丢失类型和结构...
现在开发中经常使用序列号和反序列化技术手段,php开发中也大量使用到.如下几个知名系统都使用了大量的序列化技术ecshop 2. phpcms内容管理系统 3.laravel框架 一.序列号的目的? ...
- 什么是序列化,怎么序列化,为什么序列化,反序列化会遇到什么问题,如何解决。...
作者:riemann_ blog.csdn.net/riemann_/article/details/87835260 遇到这个 Java Serializable 序列化这个接口,我们可能会有如下的 ...
- oracle存储过程如何传递一个bean对象_对象传输,序列化和反序列化
一.前言 二.基本概念 2.1 序列化和反序列化的定义及最重要的作用 序列化的定义:Java序列化就是指把Java对象转换为字节序列的过程: 反序列化的定义:Java反序列化就是指把字节序列恢复为Ja ...
- Java之序列化和反序列化
字符流和字节流,他们的操作对象是:字节(二进制),字符 序列化和反序列化的操作主体对象是:对象和二进制 什么是序列化和反序列化? 序列化:将对象转换成二进制 反序列化:从二进制中将二进制转换成对象(类 ...
- 序列每天从0开始_序列化、反序列化原理和Protobuf实现机制
1.基本概念 1.1 什么是序列化和反序列化 (1)Java序列化是指把Java对象转换为字节序列的过程,而Java反序列化是指把字节序列恢复为Java对象的过程: (2)序列化:对象序列化的最主要的 ...
- 序列化和反序列化的详解
一.基本概念 1.序列化和反序列化的定义: (1)Java序列化就是指把Java对象转换为字节序列的过程 Java反序列化就是指把字节序列恢复为Java对象的过程. (2)序列化最重要的作用:在传递和 ...
- 什么是序列化与反序列化,为什么序列化
转载:https://blog.csdn.net/qq_27093465/article/details/78544505 遇到这个 Java Serializable 序列化这个接口,我们可能会有如 ...
- 序列化和反序列化的概念及应用
1.序列化和反序列化的概念 序列化:把对象转换为字节序列的过程. 反序列化:把字节序列恢复为对象的过程称. 2.什么情况下需要序列化 把内存中的对象状态保存到一个文件中或者数据库中时候: 用套接字在网 ...
最新文章
- 如何发表cscd核心论文_新手如何发表论文
- Android 卡片翻转动画效果
- iPhoneUI元素的大小
- Java在生活中的应用盘点!
- 授人以鱼不如授人以渔,UCHome全面大解析培训活动【第三集】
- 未完待续:关于DB Link和SCN,你还需要知道的是...
- OpenShift 4 之Istio-Tutorial (3) 监控微服务运行
- Windows TensorFlow环境搭建
- java array 元素的位置_介绍java中的两种排序工具Arrays和Collections
- mysql 个版本区别_MySQL各个版本区别
- masm5安装教程_masm5 1、下载个masm5.0(简单 联合开发网 - pudn.com
- Freemarker word导出教程
- 简仿Path的商店表情弹出模块
- Serializer序列化器----反序列化使用
- 计算机制造商logo,如何更改系统oem制造商logo等信息
- 幻14 连不上无线网 网卡掉驱动
- 微信小程序的选择收货地址、新增地址、地址管理等模块的总结(1)
- python调用有道翻译_Python调用有道翻译
- Ubuntu安装GVM-11并使用gvm-tools命令行方式通讯
- Python创建自己的聊天机器人
热门文章
- 使用Protobuf推动微服务和REST API的开发
- 使用实体框架核心创建简单的审计跟踪
- 使用.net core和abp框架实现动态webapi的简单说明
- 有关Visual Studio Code的说明
- linux c 语言 errno 我个头,Linux错误代码:errno.h与返回值 -EINVAL
- element tabs 添加事件_JavaScript-跨浏览器事件处理程序-Web前端教程
- 死亡搁浅运送系统服务器,死亡搁浅订单23寻物系统服务器流程介绍-死亡搁浅订单23寻物系统服务器怎么做_牛游戏网...
- java 输出视频文件格式_java – 如何从各种视频文件格式中提取元数据?
- python函数的内涵_python内涵段子文章爬取
- java 日历工具_java中强大的时间处理工具:Calendar类(日历类)