CArchive运用与CFile

让CArchive类对象ar与CFile对象file相关联后,即可用ar的成员函数,对file文件进行读写操作了,这与直接用file的成员函数读写还要方便,而且它也重载了<<与>>,对一些整形,长整形等数据可能直接用这两个符号进行读写,另外也可以直接读写类对象,当然这类要符合几个条件.以后一般文件读写都用CArchive,这样更容易操作!

例1.

CFile file;
 file.Open(_T("E:\\编写的程序\\file.txt"),CFile::modeWrite  | CFile::modeCreate | CFile::modeRead);//用OPEN()函数即可没有文件即创并打开,有即打开
// CFile file(hfile);
 CArchive ar(&file,CArchive::store);//CArchive::load与CArchive::store并用,读是用CArchive::load,写用CArchive::store
 ar.Write(&stdata,sizeof(stdata));//stdata是一个数据结构

/***************************
 //刷新数据,即把缓冲区中的数据刷新后放在指定存盘中,
 当然这个任务也可以用ar.Close()来完成,只是同时这样
 也会关闭ar,以后不能再用ar
 *****************************/
 ar.Flush();
 //ar.Close();//

例2.

 写:

CFile file;

file.Open(_T("E:\\编写的程序\\file.txt"),CFile::modeWrite  |  CFile::modeCreate | CFile::modeRead);//用OPEN()函数即可没有文件即创并打开,有即打开
 CArchive ar(&file,CArchive::store);//CArchive::load与CArchive::store并用,读是用CArchive::load,写用CArchive::store
 ar.WriteString("this is you");
 ar.WriteString("\r\n");//windows下的换行符,单独的\n不得
 ar.WriteString("that are me");
 ar.Flush();

读:

 CFile file;
 file.Open(_T("E:\\编写的程序\\file.txt"),CFile::modeRead);
 CArchive ar(&file,CArchive::load);
 ar.ReadString(str1);
 ar.ReadString(str2);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值