可以借助另一项技术把数据保存到文件--序列化。序列化是一个基于 .NET 流的高层模型。就本质而言,序列化允许你把整个活动的对象转换为一系列字节,并把这些字节写入 FileStream 之类的流对象中。以后,你可以重新读取这些字节从而重建原对象。
你的类必须符合下列条件才能使用序列化:
- 在类的声明前必须有 Serializable 特性
- 类的所有公有和私有变量必须是可序列化的
- 如果该类从其他类继承,所有的父类都必须可序列化
如果你违反任一规则,在你序列化对象时会得到一个 SerializationException 异常。
下面是一个可用于保存日志信息的可序列化类:
[Serializable]
public class LogEntry
{
public string Message { get; set; }
public DateTime Date { get; set; }
public LogEntry(string message)
{
this.Message = message;
this.Date = DateTime.Now;
}
}