序列化

  #region 序列化


        /// <summary>
        /// 序列化对象
        /// </summary>
        /// <typeparam name="T">使用的类</typeparam>
        /// <param name="objToXml">对应类的对象</param>
        /// <returns></returns>
        private static string Serializer<T>(T objToXml)
        {
            ///泛型中的T,动态设定参数的类型
            StringWriter sw = new StringWriter();
            XmlSerializer xml = new XmlSerializer(objToXml.GetType());
            xml.Serialize(sw, objToXml);
            return sw.ToString();

        }

 

        private static T DeSerializer<T>(string strXml)
        {
            ///T,动态参数类型
            //if (strXml == string.Empty) { return ; }
            StringReader sr = new StringReader(strXml);
            XmlSerializer xml = new XmlSerializer(typeof(T));
            return (T)xml.Deserialize(sr);
        }


        #region Binary Serializers
        public static MemoryStream SerializeBinary(object request) //将对象流转换成二进制流
        {
            BinaryFormatter serializer = new BinaryFormatter();
            MemoryStream memStream = new MemoryStream();    //创建一个内存流存储区
            serializer.Serialize(memStream, request);//将对象序列化为内存流中
            return memStream;
        }

        public static object DeSerializeBinary(MemoryStream memStream) //将二进制流转换成对象
        {
            memStream.Position = 0;
            BinaryFormatter deserializer = new BinaryFormatter();
            object newobj = deserializer.Deserialize(memStream);//将内存流反序列化为对象
            memStream.Close(); //关闭内存流,并释放
            return newobj;
        }
        #endregion

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值