当然在CFileFind里面有GetLength()函数,也可以求得。 文件夹大小 DWORD CVCTestDlg::GetDirSize(CString strDirPath) { CString strFilePath; DWORD dwDirSize = 0; strFilePath += strDirPath; strFilePath += "\\*.*"; CFileFind finder; BOOL bFind = finder.FindFile(strFilePath); while (bFind)...
另外,CFile::typeText只能在CFile的子类中使用,CFile自身的Read函数不能使用CFile::typeText和CFile::typeBinary 二. File 是C和C++的函数! mfc中使用了CFile类进行相同的文件操作功能! CStdioFile继承了CFile 是CFile的子类,扩展了文本文件的操作,认识回车换行字符,可以进行一行字符串的读写! 三. Cfile类提供了基...
判断Dir中某个文件是否存在,还可以通过FileFind来实现: BOOL FileExist(CString strFileName) { CFileFind fFind; return fFind.FindFile(strFileName); } 1. 2. 3. 4. 5.
12.4.1 文件的创建和打开 CreateFile()12.4.2 文件的写入 WriteFile()12.4.3 文件的读取 ReadFile()12.5 MFC对文件操作的支持 涉及MFC编程的话,最好使用CFile对文件进行操作。创建CFile文件:CFile(文件路径+文件名,文件打开标识)CFile(LPCSTR lpszFileName,UINT nOpenFlags)nO...
CFile file; file.Open("abc.gif",CFile::modeRead);//打开图像文件 DWORD dwDataLen=file.GetLength();//获取文件的长度 BYTE *buf=newBYTE[dwDataLen];//创建数组,用来保存图像的数据 memset(buf,0x00,dwDataLen);//初始化数组 file.ReadHuge(buf,dwDataLen);//图像文件的数据保存在数组中 ...
在这个情况下,编译器(cc命令)试图将`cfile`作为源代码文件进行编译,但似乎无法识别该文件的格式,导致错误。 主要原因可能是由于文件`cfile`的内容或者文件编码格式问题。一些可能导致这种错误的情况包括: 1. **文件不是有效的C语言源代码文件**:文件内容不符合C语言的语法规则,导致编译器无法识别或解析其中的...
CFile file;file.Open("C:\\list.dat",CFile::modeCreate|CFile::modeNoTruncate|CFile::modeWrite);CArchive ar(&file,CArchive::store);POSITION pos;pos = m_list.GetHeadPosition();while (pos){ CSaveSong *pSong = (CSaveSong*)m_list.GetNext(pos);ar<< pSong->m_title;ar<< ...
CFile::modeCreate 文件已经存在,将它的长度截断为0; CFile::modeRead 只读 CFile::modeReadWrite 可读写 CFile::modeWrite 只写 操作示例 我们创建一个单文档MFC工程,命名为File;并在主菜单中增加File的菜单项,WriteFile和ReadFile是其子菜单,其ID分别是IDM_WRITEFILE和IDM_READFILE,这两个子菜单时非Popup类型,...
使用CFile::SeekToBegin()定位到文件头开始读。然后读取得到的文件长度的字节数或者判断到了文件末尾,就OK了。
判断文件是否存在,如果不存在创建文件并写入相关数据; 1CFileFind finder;//查找是否存在ini文件,若不存在,则生成一个新的默认设置的ini文件,这样就保证了我们更改后的设置每次都可用2BOOL ifFind = finder.FindFile(_T("d:\\xxx.ini"));3if(!ifFind)4{5WritePrivateProfileStringW(_T("xxx"), _T("IP...