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打交道,简单方便。

如您有疑问,可在文末留言,或到QQ群提问。

本站QQ群:291616564 麻辣GIS

微信公众号:malagis,扫描右边二维码直接关注。

微信捐助麻辣GIS 支付宝捐助麻辣GIS

如果本文对您有所帮助,欢迎对我们团队进行打赏捐助,让我们在传播3S的路上可以走得更远。


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

发表评论