<< "CFileFind:" << "文件或者文件夹查找成功" << std::endl;std::cout << std::endl;while (bRet){bRet = fFile.FindNextFile();if (fFile.IsDots()){continue;}if (fFile.IsDirectory()){std::cout << "CFileFind:" << "文件夹查找成功" << std::endl;std::cout << std::endl;}else{std::cout << "CFileFind:"<< "文件查找成功" << std::endl;std::cout << std::endl;}}}//方法二:statchar cPath[128] = { 0 };struct stat buff;int nLen = UnicodeToChar(strPath, cPath, strPath.GetLength());int nRet = -1;if (nLen > 0){nRet = stat(cPath, &buff);if (0 == nRet ) //文件或者目录存在{if (S_IFREG & buff.st_mode){//文件存在std::cout << "stat:" << cPath << "文件查找成功" << std::endl;std::cout << std::endl;}if (S_IFDIR & buff.st_mode){//文件夹存在std::cout << "stat:" << cPath << "文件夹查找成功" << std::endl;std::cout << std::endl;}}}//方式三:PathFileExistsif (PathFileExists(strPath)){//文件或文件夹存在std::cout << "PathFileExists:" << "文件或文件夹查找成功" << std::endl;std::cout << std::endl;}//方式四:CFileStatusCFileStatus FileStatus;BOOL bFileExists = CFile::GetStatus(strPath, FileStatus);if (bFileExists){//文件或文件夹存在std::cout << "CFileStatus:" << "文件或文件夹查找成功" << std::endl;std::cout << std::endl;}//方式五: access//包含 io.hnRet = _access(cPath, S_OK);if (0 == nRet){//文件或者文件夹存在std::cout << "_access:" << cPath << "文件或文件夹查找成功" << std::endl;std::cout << std::endl;}}
测试效果
如图:
1、当输入为目录
CString strPath = _T("D:\\DemoTest\\IsFileExist\\IsFileExist\\");
2、当输入为文件夹
CString strPath = _T("D:\\DemoTest\\IsFileExist\\IsFileExist");
2、当输入为文件
【MFC或C/C++中如何判断目录存在,文件/文件夹存在,亦或是文件夹存在】CString strPath = _T("D:\\DemoTest\\IsFileExist\\IsFileExist\\IsFileExistDlg.cpp");
- 考古表明我国西南或为古猿演化避难所
- 如何养蚯蚓在花盆里或者院子里?
- 你在找人吗?亦或是被找?让Cocos君来帮忙!
- 面试官:你在xx项目中有哪些亮点或是贡献亦或是小技巧?
- 如何理解「异或」的含义?
- 史海拾遗:历史上馒头或非诸葛亮发明创造
- 容器通用 linux删除docker0网卡,给网络命名空间增加或删除网卡
- 基于C++实现的经典坦克大战游戏
- 连接时空:黑洞尽头或是为另一平行宇宙
- 古代公文或信件如何加密?拆字法和代码法是什么