C编程基础之序列化

(点击上方蓝字,可快速   //二进制格式序列化器

dsrializr.Srializ(stram,coupon);   //序列化对象到文件中

}

}

现在尝试反序列化,看看与之前Coupon对象的值是否一致。

staticvoidMain(string[]args)

{

conststringfilNam=

"dmo1.txt";

//varcoupon=nwCoupon(,0.2f,1,"反骨仔");

//判断该文件是否存在

if(!Fil.Exists(filNam))

{

rturn;

}

using(varstram=Fil.OpnRad(filNam))

{

vardsrializr=nwBinaryFormattr();//二进制序列化器

varcoupon=dsrializr.Dsrializ(stram)asCoupon;//反序列化

if(coupon==null)

{

rturn;

}

Consol.WritLin($"{namof(Coupon)}:");

Consol.WritLin($"{namof(coupon.Amount)}:{coupon.Amount}");

Consol.WritLin($"{namof(coupon.IntrstRat)}:{coupon.IntrstRat}%");

Consol.WritLin($"{namof(coupon.Trm)}:{coupon.Trm}");

Consol.WritLin($"{namof(coupon.Nam)}:{coupon.Nam}");

}

Consol.Rad();

}

2.2使用SOAP格式保存对象

staticvoidMain(string[]args)

{

conststringfilNam=

"dmo1.txt";

varcoupon=nwCoupon(,0.2f,1,"反骨仔");

using(varstram=Fil.Crat(filNam))

{

vardsrializr=nwSoapFormattr();//Soap格式化器

dsrializr.Srializ(stram,coupon);//序列化

}

}

反序列化时也采用SoapFormattr即可

vardsrializr=nwSoapFormattr();//Soap格式化器

varcoupon=dsrializr.Dsrializ(stram)asCoupon;//反序列化

本示例将数据存储到二进制或SOAP格式的文件中。不应将这些格式用于敏感数据,如密码或信用卡信息。

二进制格式对于大多数Windows应用程序均适用。但对于Wb应用程序或Wb服务,您可能希望使用SOAP格式将对象保存到XML文件中,以使对象易于共享。

同样,也可以通过XmlSrializr将对象序列化保存在XML文件。我们可以根据需求选择合适的序列化器,操作基本是一样的。









































北京治疗白癜风哪间医院最权威
小孩白癜风能治好么



转载请注明:http://www.nylrzx365.com/jbjj/1321.html