对象和二进制流互转
作者:admin 来源: 2022/12/9 15:49:09
        #region 将对象流转换成二进制流
        /// <summary>
        /// 将对象流转换成二进制流
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public System.IO.MemoryStream SerializeBinary(object request)
        {
            try
            {
                System.Runtime.Serialization.Formatters.Binary.BinaryFormatter serializer = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter();
                System.IO.MemoryStream memStream = new System.IO.MemoryStream();    //创建一个内存流存储区
                serializer.Serialize(memStream, request);//将对象序列化为内存流中
                return memStream;
            }
            catch (Exception ex)
            {
                //throw ex;
            }
            return null;
        } 
        #endregion

        #region 将二进制流转换成对象
        /// <summary>
        /// 将二进制流转换成对象
        /// </summary>
        /// <param name="memStream"></param>
        /// <returns></returns>
        public object DeSerializeBinary(byte[] data)
        {
            try
            {
                System.IO.MemoryStream memStream = new System.IO.MemoryStream(data);
                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;
            }
            catch (Exception ex)
            {
                //throw ex;
            }
            return null;
        } 
        #endregion
称      呼:
联系方式:
您的评论:
技术支持:l.w.dong@qq.com www.luweidong.cn
广州市   wx:lwdred
Copyright © 2014 三味书屋 All Rights Reserved
技术支持:l.w.dong@qq.com  sitemap xml  sitemap html

粤公网安备44010602011869号

粤ICP备13031080号-1