1、C# 中对象的序列化与反序列化 C#中对象的序列化与反序列化,是一项很常用的技术,对于对象的保存,传输等十分有用。这里有两个很实用的序列化与反序列化的方法,是我从网友里的得到的,介绍给大家。以下是要用到两个方法: / / 序列化为二进制字节数组 / / 要序列化的对象 / 字节数组 public byte SerializeBinary(object request) System.Runtime.Serialization.Formatters.Binary.BinaryFormatter serializer = new System.Runtime.Serialization.Forma
2、tters.Binary.BinaryFormatter(); System.IO.MemoryStream memStream = new System.IO.MemoryStream(); serializer.Serialize(memStream, request); return memStream.GetBuffer(); / / 从二进制数组反序列化得到对象 / / 字节数组 / 得到的对象 public object DeserializeBinary(byte buf) System.IO.MemoryStream memStream = new MemoryStream(b
3、uf); memStream.Position = 0; System.Runtime.Serialization.Formatters.Binary.BinaryFormatter deserializer = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter(); object newobj = deserializer.Deserialize(memStream); memStream.Close(); return newobj; 调用的时候,以字体对象为例: 序列化: byte FontByte = SerializeBinary(new Font(“宋体“, 8); 反序列化: Font FontItem = (Font)DeserializeBinary(FontByte);