判断文件或者文件夹是否存在

时间:2021-11-16 09:59:20
// C++判断一个文件是否存在
#include <iostream>
#include <fstream>

using namespace std;

#define FILENAME "stat.dat"

int main()
{
fstream _file;
_file.open(FILENAME, ios::in);
if(!_file)
cout << FILENAME << "没有被创建" << endl;
else
cout << FILENAME << "已经存在" << endl;

system("pause");
return 0;
}



// #define _WIN32_WINNT 0x0400

#include <Windows.h>
#include <stdio.h>

int main(int argc, char* argv[])
{
WIN32_FIND_DATAA FindFileData;
HANDLE hFind;
printf("Target file is %s\n", argv[1]);

hFind = FindFirstFileA(argv[1], &FindFileData);
if(hFind == INVALID_HANDLE_VALUE)
printf("Invalid File Handle.Get Last Error reports %d\n", GetLastError());
else
printf("The first found is %s\n", FindFileData.cFileName);
FindClose(hFind);

getchar();
return 0;
}



#include <Windows.h>
#include <stdio.h>
#include <string>

using std::string;

void CheckFolderExist(const string& strPath)
{
WIN32_FIND_DATAA wfd;
HANDLE hFind = FindFirstFileA(strPath.c_str(), &wfd);
if(hFind != INVALID_HANDLE_VALUE && (wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))
printf("folder %s is exist.\n", strPath.c_str());
else
printf("folder %s is not exist.\n", strPath.c_str());
FindClose(hFind);
}

int main()
{
string str1 = "C:\\Windows";
CheckFolderExist(str1);
string str2 = "C:\\test";
CheckFolderExist(str2);

getchar();
return 0;
}



#include <afx.h>
#include <Windows.h>
#include <stdio.h>


/************************************************************************/
/* file exist */
/************************************************************************/
bool IsFileExist(const CString& csFile)
{
DWORD dwAttrib = GetFileAttributes(csFile);
return dwAttrib != INVALID_FILE_ATTRIBUTES && 0 == (dwAttrib & FILE_ATTRIBUTE_DIRECTORY);
}

/************************************************************************/
/* folder exist */
/************************************************************************/
bool IsDirExist(const CString& csDir)
{
DWORD dwAttrib = GetFileAttributes(csDir);
return dwAttrib != INVALID_FILE_ATTRIBUTES && 0 != (dwAttrib & FILE_ATTRIBUTE_DIRECTORY);
}

/************************************************************************/
/* file or folder exist */
/************************************************************************/
bool IsPathExist(const CString& csPath)
{
DWORD dwAttrib = GetFileAttributes(csPath);
return dwAttrib != INVALID_FILE_ATTRIBUTES;
}


int main()
{
getchar();
return 0;
}