序列化指对数据进行重新格式化,以一种新的格式进行存储、传输、保存等。
序列化分很多种,二进制序列化、XML序列化、JSON序列化等。
序列化只序列化数据(比如字段的值,属性的值)。
二进制序列化
二进制序列化注意点:
1.被序列化的对象的类型必须标记为“可序列化的”。
2.被序列化的对象类的所有父类也必须标记为“可序列化的”。
3.要求被序列化的对象的类型中的所有字段的类型也必须标记为“可序列化的”。
二进制反序列化注意点:
1.必须获取被序列化的对象的类型所在的程序集,因为:反序列化要根据序列化文件重新还原该对象,而序列化文件中只包含那些数据信息,并不包含该对象类型相关信息。比如,该对象是继承自哪个父类,实现了哪些接口等。这些信息在对象序列化文件中都不包含,要获取这些信息必须通过该类型的程序集来获取。
BinaryFormatter类
JSON序列化
JavaScriptSerializer类
方法:
1.Serialize():将对象转换成Json格式的字符串。
XML序列化
XmlSerializer类
方法:
Serialize():