对像写入流,序列化 反序列化

来源:互联网 发布:windows failed start 编辑:程序博客网 时间:2024/06/12 01:30

命名空间:using System.Runtime.Serialization.Formatters.Binary;

            //序列化

            IUserReg aIUserReg = (IUserReg)aUserReg;
            //对像写进流
            MemoryStream streamw = new MemoryStream();
            BinaryFormatter f = new BinaryFormatter();
            f.Serialize(streamw, aIUserReg);

    //获取流字节
            byte[] bytes = streamw.GetBuffer();
            streamw.Read(bytes, 0, bytes.Length);
            streamw.Close();


            //反序列化

            MemoryStream streamr = new MemoryStream();
            //streamr.SetLength(bytes.LongLength);//可要,可不要
            streamr.Write(bytes, 0, bytes.Length);
            streamr.Position = 0;//>>>>>>>>>>>>>>>>>>>>这个也关键.
            BinaryFormatter f2 = new BinaryFormatter();
            aIUserReg = (IUserReg)f2.Deserialize(streamr);

            streamr.Close();

原创粉丝点击