实例解析c++、cli的串行化

实例解析c++、cli的串行化

ID:10268177

大小:57.00 KB

页数:0页

时间:2018-06-14

实例解析c++、cli的串行化_第页
预览图正在加载中,预计需要20秒,请耐心等待
资源描述:

《实例解析c++、cli的串行化》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实例解析C++/CLI的串行化-  串行化可使对象被转换为某种外部的形式,比如以文件存储的形式供程序使用,或通过程序间的通讯发送到另一个处理过程。转换为外部形式的过程称为"串行化",而逆过程称为"反串行化"。  简介    请看例1中的示例,其将多个对象类型的值写入到一个新的磁盘文件中,关闭文件,接着再把这些值重新读取到内存中。  例1:usingnamespaceSystem;usingnamespaceSystem::IO;usingnamespaceSystem::Runtime::Serialization::Formatters::Binary;intmain(){ arra

2、y^intArray={10,20,30}; array^floatArray={  {1.2F,2.4F},  {3.5F,6.8F},  {8.4F,9.7F} }; DateTimedt=DateTime::Now; Console::WriteLine("dt>{0}<",dt); /*1*/BinaryFormatter^formatter=gcnewBinaryFormatter; //将数据串行化到一个文件 /*2*/Stream^file=File::Open("Sr01.ser",FileMode::Create); /*3a*/forma

3、tter->Serialize(file,"Hello"); /*3b*/formatter->Serialize(file,intArray); /*3c*/formatter->Serialize(file,floatArray); /*3d*/formatter->Serialize(file,true); /*3e*/formatter->Serialize(file,dt); /*3f*/formatter->Serialize(file,1000); /*3g*/formatter->Serialize(file,L''X''); /*3h*/formatter->Seri

4、alize(file,1.23456F); /*4*/file->Close(); //从文件中反串行化数据--即读取数据 /*5*/file=File::Open("Sr01.ser",FileMode::Open); /*6a*/String^s=static_cast(formatter->Deserialize(file)); Console::WriteLine("String>{0}<",s); /*6b*/array^newIntArray= static_cast^>(formatter->Deserialize(fil

5、e)); Console::WriteLine("newIntArray:"); for(inti=0;iLength;++i) {  Console::Write("{0}",newIntArray[i]); } Console::WriteLine(); /*6c*/array^newFloatArray= static_cast^>(formatter->Deserialize(file)); Console::WriteLine("newFloatArray:"); for(inti=0;i<3;++i

6、) {  for(intj=0;j<2;++j)  {   Console::Write("{0}",newFloatArray[i,j]);  }  Console::WriteLine(); } /*6d*/boolb=static_cast(formatter->Deserialize(file)); Console::WriteLine("bool>{0}<",b); /*6e*/DateTimenewDT=static_cast(formatter->Deserialize(file)); Console::WriteLine("newDT>{

7、0}<",newDT); /*6f*/intv=static_cast(formatter->Deserialize(file)); Console::WriteLine("int>{0}<",v); /*6g*/wchar_tc=static_cast(formatter->Deserialize(file)); Console::WriteLine("wchar_t>{0}<",c); /*6h*/floatf=

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。