c#序列化和反序列化(一)
【定义】
序列化是获取内存中的对象或对象图 (一组相互引用的对象) 并将其扁平化为可以存储或传输的字节、XML、JSON或类似表示的流的行为。
反序列化反向工作,获取数据流并将其重构为内存中的对象或对象图。
【使用场景】
序列化和反序列化通常用于执行以下操作:
跨网络或应用程序边界传输对象
将对象的表示形式存储在文件或数据库中
【涉及命名空间】
System.Runtime.Serialization
System.Xml.Serialization
System.Text.Json
【代码与说明】
从序列化和反序列化的定义可以知道,实现序列化和反序列化有几种方式:
XML序列化
JSON序列化
数据协定序列化(XML和JSON)
二进制序列化
【代码】
由于这个方向涉及内容比较多,本篇主要介绍一下XML实现序列化和反序列化操作:
【方式一】:创建模型类,实现序列化存储成XML文件;反序列化是直接读取XML文件;
模型:
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}