剖析vc中的文件操作

剖析vc中的文件操作

ID:34443226

大小:46.16 KB

页数:29页

时间:2019-03-06

剖析vc中的文件操作_第1页
剖析vc中的文件操作_第2页
剖析vc中的文件操作_第3页
剖析vc中的文件操作_第4页
剖析vc中的文件操作_第5页
资源描述:

《剖析vc中的文件操作》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、剖析VC中的文件操作一、剖析VC中的文件操作各种关于文件的操作在程序设计中是十分常见,如果能对其各种操作都了如指掌,就可以根据实际情况找到最佳的解决方案,从而在较短的时间内编写出高效的代码,因而熟练的掌握文件操作是十分重要的。本文将对VisualC++中有关文件操作进行全面的介绍,并对在文件操作中经常遇到的一些疑难问题进行详细的分析。  1.文件的查找   当对一个文件操作时,如果不知道该文件是否存在,就要首先进行查找。MFC中有一个专门用来进行文件查找的类CFileFind,使用它可以方便快捷地进行文件的查找。下面这段代码演示了这个类的最基本使用方法。   CString

2、strFileTitle;   CFileFindfinder;   BOOLbWorking=finder.FindFile("C:\windows\sysbkup\*.cab");   while(bWorking)   {   bWorking=finder.FindNextFile();   strFileTitle=finder.GetFileTitle();   }   2.文件的打开/保存对话框   让用户选择文件进行打开和存储操作时,就要用到文件打开/保存对话框。MFC的类CFileDialog用于实现这种功能。使用CFileDialog声明一个对象时

3、,第一个BOOL型参数用于指定文件的打开或保存,当为TRUE时将构造一个文件打开对话框,为FALSE时构造一个文件保存对话框。   在构造CFileDialog对象时,如果在参数中指定了OFN_ALLOWMULTISELECT风格,则在此对话框中可以进行多选操作。此时要重点注意为此CFileDialog对象的m_ofn.lpstrFile分配一块内存,用于存储多选操作所返回的所有文件路径名,如果不进行分配或分配的内存过小就会导致操作失败。下面这段程序演示了文件打开对话框的使用方法。   CFileDialogmFileDlg(TRUE,NULL,NULL,   OFN_HI

4、DEREADONLY

5、OFN_OVERWRITEPROMPT

6、OFN_ALLOWMULTISELECT,   "AllFiles(*.*)

7、*.*

8、

9、",AfxGetMainWnd());   CStringstr("",10000);   mFileDlg.m_ofn.lpstrFile=str.GetBuffer(10000);   str.ReleaseBuffer();   POSITIONmPos=mFileDlg.GetStartPosition();   CStringpathName("",128);   CFileStatusstatus;   while

10、(mPos!=NULL)   {   pathName=mFileDlg.GetNextPathName(mPos);   CFile::GetStatus(pathName,status);   }   3.文件的读写   文件的读写非常重要,下面将重点进行介绍。文件读写的最普通的方法是直接使用CFile进行,如文件的读写可以使用下面的方法:    //对文件进行读操作    charsRead[2];    CFilemFile(_T("user.txt"),CFile::modeRead);    if(mFile.GetLength()<2)    return; 

11、   mFile.Read(sRead,2);    mFile.Close();    //对文件进行写操作    CFilemFile(_T("user.txt"),CFile::modeWrite

12、CFile::modeCreate);    mFile.Write(sRead,2);    mFile.Flush();    mFile.Close();    虽然这种方法最为基本,但是它的使用繁琐,而且功能非常简单。我向你推荐的是使用CArchive,它的使用方法简单且功能十分强大。首先还是用CFile声明一个对象,然后用这个对象的指针做参数声明一个CArchiv

13、e对象,你就可以非常方便地存储各种复杂的数据类型了。它的使用方法见下例。    //对文件进行写操作    CStringstrTemp;    CFilemFile;    mFile.Open("d:\dd\try.TRY",CFile::modeCreate

14、CFile::modeNoTruncate

15、CFile::modeWrite);    CArchivear(&mFile,CArchive::store);    ar<<  ar.Close();    mFile.Close();    //对

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。