using System.IO; using System.Runtime.Serialization.Formatters.Binary; namespace Hncore.Infrastructure.Common { /// /// 二进制序列化 /// public class BinaryHelper { /// /// 序列化对象(二进制) /// /// 需要序列化的对象 public static byte[] Serialize(object obj) { using (MemoryStream ms = new MemoryStream()) { BinaryFormatter binaryFormatter = new BinaryFormatter(); binaryFormatter.Serialize(ms, obj); return ms.ToArray(); } } /// /// 反序列化对象(二进制) /// /// 需要反序列化的字符串 public static object Deserialize(byte[] bytes) { if (bytes == null) { return null; } using (MemoryStream ms = new MemoryStream()) { ms.Write(bytes, 0, bytes.Length); ms.Seek(0, SeekOrigin.Begin); BinaryFormatter binaryFormatter = new BinaryFormatter(); return binaryFormatter.Deserialize(ms); } } } }