首 页IT知识库翔宇问吧收藏本站
当前位置:翔宇亭IT乐园IT知识库编程技术C/C++

使用CFile类进行文件的读写

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2010-08-05 10:53:00

文件的读写非常重要,下面将重点进行介绍。文件读写的最普通的方法是直接使用CFile进行,如文件的读写可以使用下面的方法:

 //对文件进行读操作

 char sRead[2];
  CFile mFile(_T("user.txt"),CFile::modeRead);
   if(mFile.GetLength()<2)
    return;
  mFile.Read(sRead,2);
  mFile.Close();

 //对文件进行写操作
  CFile mFile(_T("user.txt "), CFile::modeWrite|CFile::modeCreate);
  mFile.Write(sRead,2);
  mFile.Flush();
  mFile.Close();

 虽然这种方法最为基本,但是它的使用繁琐,而且功能非常简单。如与CArchive类配合使用,将变得简单而功能强大。

首先还是用CFile声明一个对象,然后用这个对象的指针做参数声明一个CArchive对象,你就可以非常方便地存储各种复杂的数据类型了。

 //对文件进行写操作

CString strTemp;
  CFile mFile;
  mFile.Open("d:\\dd\\try.TRY",CFile::modeCreate|CFile::modeNoTruncate|CFile::modeWrite);
  CArchive ar(&mFile,CArchive::store);
  ar<<strTemp;
  ar.Close();
  mFile.Close();

 //对文件进行读操作

 CFile mFile;
  if(mFile.Open("d:\\dd\\try.TRY",CFile::modeRead)==0)
     return;
  CArchive ar(&mFile,CArchive::load);
  ar>>strTemp;
  ar.Close();
  mFile.Close();

 CArchive的 << 和>> 操作符用于简单数据类型的读写,对于CObject派生类的对象的存取要使用ReadObject()和WriteObject()。使用CArchive的ReadClass()和WriteClass()还可以进行类的读写,如:

 //存储CAboutDlg类

 ar.WriteClass(RUNTIME_CLASS(CAboutDlg));

//读取CAboutDlg类

 CRuntimeClass* mRunClass=ar.ReadClass();

//使用CAboutDlg类

 CObject* pObject=mRunClass->CreateObject();

 ((CDialog* )pObject)->DoModal();


本文源自:翔宇亭——IT乐园(http://www.biye5u.com),转载请保留此信息!

知识评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

用户名: 查看更多评论

分 值:100分 85分 70分 55分 40分 25分 10分 1分

内 容:

            请注意用语文明且合法,不要发布带有攻击性、侮辱性的言论,谢谢合作!

         通知管理员 验证码:

关于本站 | 网站帮助 | 广告合作 | 网站声明 | 友情连接 | 网站地图 | 用户守则 | 联系我们 |
本站大多数内容来自互联网或网站会员发布,如有侵权,请来信告之,谢谢!
Copyright © 2007-2017 biye5u.com. All Rights Reserved.
网站备案号:黑ICP备13005378号-3