//FileStream
byte[] fonts = new byte[100];
FileStream fs = new FileStream("c:\\test.txt",FileMode.Create,FileAccess.ReadWrite);
fs.Read(fonts,0,100);
fs.Write(fonts,0,100);
fs.Close();

解决方案 »

  1.   

    一个文本计数器的例子。包括读写。string strfile=@"C:\a.txt";
    //读 
    FileStream fs=new FileStream(strfile,FileMode.Open,FileAccess.Read);
    StreamReader sr=new StreamReader(fs);
    string stra=sr.ReadLine();
    sr.Close();
    fs.Close(); int i=int.Parse(stra)+1;
    //写
    FileStream fs2=new FileStream(strfile,FileMode.Create,FileAccess.Write);
    StreamWriter sw=new StreamWriter(fs2);
    sw.WriteLine(i);
    sw.Flush();
    sw.Close();
    fs2.Close();
      

  2.   


    public bool Readfile(string filename,ref ArrayList classN)
    {
    try
    {
    Stream r = File.Open(filename, FileMode.Open, FileAccess.Read);
    BinaryFormatter c = new BinaryFormatter();
    classN= (ArrayList) c.Deserialize(r);
    r.Close ();

    return true;}
    catch{

    return false;
    }
    }
    public bool Savefile(string filename,ref ArrayList classN)
    {
    try
    {

    Stream s = File.Open(filename, FileMode.Create, FileAccess.ReadWrite);
    BinaryFormatter b = new BinaryFormatter();
    b.Serialize(s, classN);
    s.Close ();

    return true;}
    catch{return false;}
    }
    只要你的一个类是 ArrayList类型的
    比如:
      
       public class a: System.Collections.ArrayList;
    {
       ....
    }
    就可以用 a代替classN进行a的存储和恢复
    但是如果a类中的元素含有自定义的类对象b,那么在类b的声明中必须有[Serializable()] 
    如:
      [Serializable()] 
    public class b
    {
      ......
    }