对不起,如果这是一个微不足道的问题。
如果我想在 xml 中序列化我当前的对象,例如,我可以编写一个类似的方法
public void xml_serialize_save(string fname)
{
System.Xml.Serialization.XmlSerializer x =
new System.Xml.Serialization.XmlSerializer(this.GetType());
x.Serialize(new System.IO.StreamWriter(fname), this);
}
现在,假设我想以同样的方式反序列化它,我想要一个方法,例如
public void xml_serialize_load(string fname)
{
System.Xml.Serialization.XmlSerializer x =
new System.Xml.Serialization.XmlSerializer(this.GetType());
this = (Data_param)x.Deserialize(new System.IO.StreamReader(fname));
}
这当然不起作用,因为分配给this
.
问题是:
我是否有义务反序列化一个临时对象,比如说
Data_param temp = (Data_param)x.Deserialize(new System.IO.StreamReader(fname));
?
然后我应该手动对成员
temp
进行深拷贝吗?this