VC 查找目录中是否已经存在该文件
方法一、
POFSTRUCT lpOpenBuf=new OFSTRUCT; HFILE hFile=OpenFile(strFileName,lpOpenBuf,OF_EXIST); if(hFile!=HFILE_ERROR) { // file exist. } 方法二、 #include CString m_Edit=“f://test.txt”;//从Edit得到的字符串 ifstream infile(m_Edit); if(!infile) { AfxMessageBox( "该文件不存在 "); } 方法三、 char *lpszStr= "C:/WINDOWS/system32/MSCAL.OCX "; PathFileExists(lpszStr); 方法四、 FILE *fp=NULL; fp = fopen( "C:/WINDOWS/system32/MSCAL.OCX ", "r " ); if( fp != NULL ) { MessageBox(NULL, "这个文件已经存在! ", "Tips ", MB_OK ); return ; } 方法五、 HANDLE hFind; WIN32_FIND_DATA dataFind; BOOL bMoreFiles = TRUE; //Find the first file in the main directory hFind = FindFirstFile(TEXT( "C://WINDOWS//system32//MSCAL.OCX "),&dataFind); if(hFind) //若存在,则hFind == TRUE { } else { } FindClose(hFind); 方法六、 CString strPath( "C://a.txt "); HANDLE hFile = NULL; hFile= CreateFile( strPath, GENERIC_ALL, FILE_SHARE_READ, NULL, OPEN_EXISTING,//判定文件是否存在 FILE_ATTRIBUTE_NORMAL, NULL); DWORD dwErr = GetLastError(); if (dwErr == ERROR_FILE_NOT_FOUND) { AfxMessageBox( "FILE_NOT_FOUND "); } if (hFile) CloseHandle(hFile); 方法七、 CFileFind find; int result=find.FindFile( "C://aaa.txt "); if(result==0) { AfxMessageBox( "文件不存在 "); } else { AfxMessageBox( "文件存在 "); } |