C# 复杂类数据 反序列化 错误

来源:百度知道 编辑:UC知道 时间:2024/06/01 19:07:15
SerializableRegion RDStore = new SerializableRegion(this.Region);
Stream sw = File.Create(@"C:\FormMap.bin");
bf.Serialize(sw, RDStore);
sw.Seek(0, SeekOrigin.Begin);
RDStore = (SerializableRegion)bf.Deserialize(sw);//这一行出错,提示:未将对象引用设置到对象的实例
sw.Close();
注:SerializableRegion 是一个复杂类.
不知道要怎么解决?
问题解决了,是SerializableRegion 类里面用了一个region的结构体,这个结构体不能被序列化.

先关闭流,再重新打开文件流、反序列化。
SerializableRegion RDStore = new SerializableRegion(this.Region);
Stream sw = File.Create(@"C:\FormMap.bin");
bf.Serialize(sw, RDStore);
sw.Close();
sw = File.Create(@"C:\FormMap.bin");
RDStore = (SerializableRegion)bf.Deserialize(sw);
sw.Close();