win10 UWP 序列化
来源:互联网 发布:mac版photoshop破解版 编辑:程序博客网 时间:2024/06/11 05:35
将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。
.NET Framework 提供了两个序列化技术:
二进制序列化保持类型保真,这对于多次调用应用程序时保持对象状态非常有用。例如,通过将对象序列化到剪贴板,可在不同的应用程序之间共享对象。您可以将对象序列化到流、磁盘、内存和网络等。远程处理使用序列化,“按值”在计算机或应用程序域之间传递对象。
XML 序列化只序列化公共属性和字段,并且不保持类型保真。当您希望提供或使用数据而不限制使用该数据的应用程序时,这一点非常有用。
Binary
首先需要定义一个类,这个类作为保存的类,需要使用特性 Serializable
然后使用 binaryFormatter
他可以写入流
创建一个文件夹,返回和People类,就可以把他保存在本地
BinaryFormatter binaryFormatter = new BinaryFormatter(); FileStream stream = new FileStream("./file", FileMode.Create); binaryFormatter.Serialize(stream, people);
这就是序列化,如果需要从保存的文件拿出来,可以参见下面代码:
using (FileStream stream = new FileStream("./file", FileMode.Open)) { people = (People) binaryFormatter.Deserialize(stream); Console.WriteLine(people.Name); }
可以看到代码都是使用命令行不是使用通用程序
XML序列化
XmlSerializer xmlSerializer = new XmlSerializer(typeof(People)); using (FileStream stream = new FileStream("./file", FileMode.Create)) { xmlSerializer.Serialize(stream, people); } using (FileStream stream = new FileStream("./file", FileMode.Open)) { people = (People)xmlSerializer.Deserialize(stream); Console.WriteLine(people); }
如果有一些属性需要不显示,也就是不放在文件,可以参见:https://msdn.microsoft.com/zh-cn/library/83y7df3e(v=vs.90).aspx
XmlSerializer 创建 C# 文件并将其编译为 .dll 文件,以执行此序列化。
为了提高性能,XML 序列化基础结构动态生成程序集,以便对指定类型进行序列化和反序列化。该基础结构将找到并重新使用这些程序集。仅当使用以下构造函数时,才会发生此行为:
XmlSerializer.XmlSerializer(Type)
XmlSerializer.XmlSerializer(Type, String)
如果使用任何其他构造函数,则将生成同一个程序集的多个版本,这些版本始终不予卸载
Yaml序列化
首先搜索 YamlDotNet ,安装
这里使用参见 http://www.cnblogs.com/RicCC/archive/2010/03/01/serialization-data-format.html
参见:
win10 uwp json
win10 uwp 读写XML
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。欢迎转载、使用、重新发布,但务必保留文章署名林德熙(包含链接:http://blog.csdn.net/lindexi_gd ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我联系。
- win10 UWP 序列化
- win10 UWP读写文件
- Win10/UWP开发-Ink
- win10 uwp 通知Toast
- win10 UWP 显示地图
- win10 uwp 参考
- win10 uwp clone
- Win10/UWP 扫描二维码
- win10 UWP FlipView
- win10 UWP button
- win10 UWP 剪贴板 Clipboard
- win10 UWP 应用设置
- win10 UWP 圆形等待
- win10 UWP 标题栏后退
- win10 UWP 单元测试
- win10 UWP RSS阅读器
- win10 UWP Hmac
- win10 UWP GET Post
- UML(1)
- 通过secureCRT的SSH2来实现无线连接开发板
- ListView工作原理分析
- P1074 靶形数独
- (181)混合
- win10 UWP 序列化
- eclipse相关编码设置
- linux 创建软连接
- 红黑树
- Linux下用apt-get安装的常用软件
- (182)渐变
- !important的意思与应用实例
- 给定一个整数数组,返回数组中两个元素的和为target的索引
- net-snmp获取各个类型的数据