MFC学习笔记:CArchive类的使用
2012-09-11 14:25
337 查看
CArchive(读作[si:'ɑ:kaiv])没有基类,它可以将任意类型的数据直接按照二进制形式永久存储在磁盘上,并可以读取磁盘上的归档文件,再恢复为原来的数据。这种数据永久保留的过程叫作"串行化"。
1.构造函数
CArchive(CFile* pFile,UINT nMode,int nBufSize=4096,void* lpBuf=NULL );
pFile是永久数据的最终的源或目标文件对应的CFile对象;
nMode参数指明是要从归档文件中装载或存储到文件中去;
如下代码构造一个CArchive对象:
CFile file("test.bin",CFile::modeCreate|CFile::modeWrite|CFile::typeBinary);
CArchive ar(&file,CArchive::store);
2.写入数据到文件
operator <<
CArchive类重载了<<操作符,用来写入数据,该操作符支持的参数类型有:
CObject*,BYTE,WORD,int,LONG,DWORD,float,double
如下代码将二进制数据1B DE 83 42 CA C0 F3 3F写入到test.bin中:
double d=1.23456789; //1.23456789在内存中的二进制表示:1B DE 83 42 CA C0 F3 3F
ar<<d;
可以用如下代码试试1B DE 83 42 CA C0 F3 3F表示的数据:
double doubleValue=0.0;
unsigned char bin[]={0x1b,0xde,0x83,0x42,0xca,0xc0,0xf3,0x3f};
memcpy(&doubleValue,bin,8);//此时doubleValue=1.23456789
3.从文件读取数据
operator >>
CArchive类重载了>>操作符,用来读取数据,示例代码如下:
CFile file("test.bin",CFile::modeRead|CFile::typeBinary);
CArchive ar(&file,CArchive::load);
double d=0.0;
ar>>d;//此时d=1.23456789
1.构造函数
CArchive(CFile* pFile,UINT nMode,int nBufSize=4096,void* lpBuf=NULL );
pFile是永久数据的最终的源或目标文件对应的CFile对象;
nMode参数指明是要从归档文件中装载或存储到文件中去;
如下代码构造一个CArchive对象:
CFile file("test.bin",CFile::modeCreate|CFile::modeWrite|CFile::typeBinary);
CArchive ar(&file,CArchive::store);
2.写入数据到文件
operator <<
CArchive类重载了<<操作符,用来写入数据,该操作符支持的参数类型有:
CObject*,BYTE,WORD,int,LONG,DWORD,float,double
如下代码将二进制数据1B DE 83 42 CA C0 F3 3F写入到test.bin中:
double d=1.23456789; //1.23456789在内存中的二进制表示:1B DE 83 42 CA C0 F3 3F
ar<<d;
可以用如下代码试试1B DE 83 42 CA C0 F3 3F表示的数据:
double doubleValue=0.0;
unsigned char bin[]={0x1b,0xde,0x83,0x42,0xca,0xc0,0xf3,0x3f};
memcpy(&doubleValue,bin,8);//此时doubleValue=1.23456789
3.从文件读取数据
operator >>
CArchive类重载了>>操作符,用来读取数据,示例代码如下:
CFile file("test.bin",CFile::modeRead|CFile::typeBinary);
CArchive ar(&file,CArchive::load);
double d=0.0;
ar>>d;//此时d=1.23456789
相关文章推荐
- VC6使用GDI+进行图像的特效处理和MFC学习笔记-1
- MFC学习笔记之:属性页和表单的使用
- MFC学习笔记——自定义消息的使用 .
- [每日一学]MFC学习笔记——自定义消息的使用
- CAD二次开发学习笔记五(在ObjectARX中使用MFC)
- MFC学习笔记_ComboBox的基本使用
- 孙鑫VC学习笔记:第四讲 MFC消息映射机制和CDC类的使用
- MFC学习笔记之:ListCtrl控件使用详解
- MFC学习笔记之多对话框中使用定时器
- MFC学习笔记之:ListCtrl控件使用详解
- OpenCV学习笔记(8)VS2008 MFC下使用OpenCV2.0进行简单图像处理
- 孙鑫VC学习笔记:第四讲 MFC消息映射机制和CDC类的使用
- MFC学习笔记之:属性页和表单的使用
- OpenCV学习笔记(8)VS2008 MFC下使用OpenCV2.0进行简单图像处理
- MFC关于CBimtap类的使用和创建位图数组的问题【学习笔记】
- MFC学习笔记--将对话框收获的输入在View中使用
- Wireshark使用方法(学习笔记二——查询统计)
- 韩顺平_PHP程序员玩转算法公开课(第一季)07_使用数组实现堆栈_学习笔记_源代码图解_PPT文档整理
- VC学习笔记---ATL MFC CLR三个库的区别
- 【黑马程序员】Objective-C语言学习笔记之对象的创建、使用和方法调用(三)