.Net序列化和反序列化Demo

.Net序列化方式:

二进制序列化:对象序列化之后形成二进制形式,通过BinaryFormatter类来实现的,这个类位于System.Runtime.Serialization.Formatters.Binary命名空间下。

SOAP序列化:对象序列化之后的结果符合SOAP协议,也就是可以通过SOAP 协议传输,通过System.Runtime.Serialization.Formatters.Soap命名空间下的SoapFormatter类来实现的。

XML序列化:对象序列化之后的结果是XML形式的,通过XmlSerializer 类来实现的,这个类位于System.Xml.Serialization命名空间下。XML序列化不能序列化私有数据。

XML序列化Demo

1、首先VS新建Tool项目,新建Serializer文件夹,创建XMLSerialize类,用于编写XML序列化方法:

<注意先引用System.Xml.Serialization命名空间>

.Net序列化和反序列化Demo_第1张图片

.Net序列化和反序列化Demo_第2张图片

2、新建Test类,创建一个winForm窗体,引用Tool类中XML序列化方法,将字符串str=”Hi~~~~~~”序列化/反序列化

  <span style="font-size:14px;"> //调用Tool类中序列化方法,将str"Hi~~~~~~"序列化
        private void button1_Click(object sender, EventArgs e)
        {
            string str = "Hi~~~~~~";           
            Tool.Serializer.XMLSerialize.Serialize<string>(str, "1.txt");
            MessageBox.Show("序列化完毕");
        }

        //调用Tool类中反序列化方法,将1.txt反序列化,最终弹出显示“Hi~~~~~~”
        private void button2_Click(object sender, EventArgs e)
        {
            string str = Tool.Serializer.XMLSerialize.DeSerialize<string>("1.txt");
            MessageBox.Show(str);
        }</span>

3、运行验证:序列化后,提示序列化完毕;反序列化弹出str字符串内容

.Net序列化和反序列化Demo_第3张图片

你可能感兴趣的:(.Net序列化和反序列化Demo)