BOOL CreateDirectory(
LPCTSTR lpPathName, // directory name
LPSECURITY_ATTRIBUTES lpSecurityAttributes
// Pointer to a SECURITY_ATTRIBUTES structure
);
要判断文件夹是否存在,首先用CFindFile类得到文件(可以判断是否存在),存在的话用IsDirectory判断是否文件夹
LPCTSTR lpPathName, // directory name
LPSECURITY_ATTRIBUTES lpSecurityAttributes
// Pointer to a SECURITY_ATTRIBUTES structure
);
要判断文件夹是否存在,首先用CFindFile类得到文件(可以判断是否存在),存在的话用IsDirectory判断是否文件夹
LPCTSTR pszPath
);//判断一个目录是否存在!
{
WIN32_FIND_DATA fileinfo;
char _szDir[_MAX_PATH];
strcpy(_szDir, pszDirName);
int nLen = strlen(_szDir);
if( (_szDir[nLen-1] == '\\') || (_szDir[nLen-1] == '/') )
{
_szDir[nLen-1] = '\0';
}
HANDLE hFind = ::FindFirstFile(_szDir, &fileinfo); if (hFind == INVALID_HANDLE_VALUE)
{
return false;
}
if( fileinfo.dwFileAttributes == FILE_ATTRIBUTE_DIRECTORY )
{
::FindClose(hFind);
return true;
}
::FindClose(hFind);
return false;
}// 创建目录,包含子目录,可以创建多级子目录
bool CreateDir(const char *pszDirName)
{
bool bRet = false;
char _szDir[_MAX_PATH];
char _szTmp[_MAX_DIR];
int nLen = 0;
int idx ;
if( (DirExist(pszDirName)) == true )
return true;
strcpy(_szDir, pszDirName);
nLen = strlen(_szDir);
if( _szDir[nLen-1] == '\\' || _szDir[nLen-1] == '/' )
{
_szDir[nLen-1] = '\0';
}
nLen = strlen(_szDir);
memset(_szTmp, 0, _MAX_DIR);
char _str[2];
for(idx = 0; idx < nLen; idx++)
{
if(_szDir[idx] != '\\' )
{
_str[0] = _szDir[idx];
_str[1] = 0;
strcat(_szTmp, _str);
}
else
{
bRet = ::CreateDirectory(_szTmp, NULL);
if( bRet )
{
::SetFileAttributes(_szTmp, FILE_ATTRIBUTE_NORMAL);
}
_str[0] = _szDir[idx];
_str[1] = 0;
strcat(_szTmp, _str);
}
if( idx == nLen-1 )
{
bRet = ::CreateDirectory(_szTmp, NULL);
if( bRet )
{
::SetFileAttributes(_szTmp, FILE_ATTRIBUTE_NORMAL);
}
}
}
if( DirExist(_szTmp) )
return true;
return false;
}