二进制序列化和反序列化类

using System;
using System.IO;
using System.Runtime.Serialization; //二进制序列化类的命名空间
using System.Runtime.Serialization.Formatters.Binary;//提供的是二进制的命名空间
namespace Console88
{
 /// <summary>
 /// Class1 的摘要说明。
 /// </summary>
 public class Class1
 {
  /// <summary>
  /// 应用程序的主入口点。
  /// </summary>
  [STAThread] //表示的是单进程的
  static void Main(string[] args)
  {
   //
   // TODO: 在此处添加代码以启动应用程序
   //
   Student s=new Student();

   s.i=100;

   s.j=200;

   //IFormatter 提供将序列化对象格式化的功能

   IFormatter  ff=new BinaryFormatter();//以二进制序列化类

//   Stream stream=new FileStream(@"MyFile.txt",FileMode.Create,FileAccess.Write,FileShare.None);//将文件写入流
  
//   ff.Serialize(stream,s);//将对象提供给所序列化的流


   Stream stream=new FileStream(@"MyFile.txt",FileMode.Open,FileAccess.Read,FileShare.Read);//反序列化的文件必须存在

   stream.Seek(0,SeekOrigin.Begin); //解决的是反序列化的时候解决流的结尾

   ff.Deserialize(stream); //反序列化该类得流
   
   stream.Close();//关闭并释放所有的资源

   Console.WriteLine("i:{0}",s.i);

   Console.Write("j:{0}",s.j);

   }
 }

 [Serializable] //序列化该类
 public class Student
 {
  public int i=0;
  public int j=0;
 }

}

转载于:https://www.cnblogs.com/suneryong/archive/2007/06/13/781818.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值