XML的序列化和反序列化
System.Xml.Serialization命名空间中有一系列的特性类,用来控制复杂类型序列化。例如XmlElementAttribute、XmlAttributeAttribute、XmlArrayAttribute、XmlArrayItemAttribute、XmlRootAttribute等等。
对类就行声明可序列化
[Serialized]
public class Book
{
对字段进行标注是否可序列化=>[NonSerialized],默认可序列化
[NonSerialized]
private string ID; //ID不可序列化
public string name; //name可序列化
}
xml序列化
string strfile="c:\book.xml";
FileStream fs=new FileStream(strfile,FileMode.Create);
//构造XMlSerializer对象
XMlSerializer formatter =new XMlSerializer(typeof(Book));
formatter.Serialize(fs,book);
fs.Close;
XML反序列化
FileStream fs=new FileStream(strfile,FileMode.Open);
//构造XMlSerializer对象
XMlSerializer formatter =new XMlSerializer(typeof(Book));
Book book2=(Book)formatter.Deserialize(fs));
fs.Close;