//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();
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();
//读
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();
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
{
......
}