VC++开发GIS系统(76)补充知识使用CArchive读写文件

在上文《VC++开发GIS系统(75)实现新建mpj工程文件》中实现了新建工程文件的写入,其中用到了CArchive这个类来读写文件,本文对此做一个小的介绍。

CArchive构造函数

CArchive的构造函数如下:

CArchive::CArchive(CFile *pfile, UINT nMode,  int nBufsize, void *lpBuf=NULL); 

pFile就是与之关联的CFile对象,因此要先用CFile打开一个文件;

第二个参数是串行化的模式

CArchive::load //从磁盘读
CArchive::store //从向磁盘写

第三个参数是串行化缓冲区的大小,一般就取默认值4KB即可。

最后一个参数设为NULL,表明缓冲区由系统决定。

一个简单的示例

CFile file;
file.Open(LPCTSTR(mPrjPath), CFile::modeCreate | CFile::modeWrite);//打开文件
CArchive ar(&file, CArchive::store);//初始化CArchive
ar << pNode.itemnode << pNode.isOpen << pNode.isActive << pNode.filePath << pNode.fileType;//写入
ar.Close();//关闭CArchive
file.Close();//关闭文件

把<<,改成>>就是读取了,使用CArchive可以很方便的读完序列化文件,避免了直接和CFile打交道,简单方便。

VC++开发GIS系统(75)实现新建mpj工程文件 VC++开发GIS系统(77)实现新建工程菜单的响应

作者:,GIS爱好者。
分享本文,请您带上本文链接
分享到:

发表评论