百度了半天,沒找到實用的,看來還是得多寫寫。
c/c++與mfc不同,創建目錄也不一樣,剛開始還以爲能通用,直接把c的代碼拷過去發現用不了。
FILE *fp = NULL;
fp = fopen(“d:\\fuck", "rw");
if(NULL == fp){
if(_mkdir(sFileName) == 0 ){
//return 1;
}else{
//return 0;
}
}else{
fclose(fp);
//return 1;
}
mfc:
bool ExtractFilePath(CString &sFileName)
{
if(!PathFileExists(sFileName.GetBuffer()))
if(!CreateDirectory(sFileName.GetBuffer(), NULL))
return FALSE;
return TRUE;
}
獲取運行目錄:
bool GetFilePathA(char *sFileName)
{
if(!sFileName) return FALSE;
memset(sFileName, 0, sizeof(sFileName));
GetModuleFileNameA(NULL, sFileName, sizeof(sFileName));
int i = strlen(sFileName);
for(int j = strlen(sFileName); sFileName[j] != '\\'; j--)
sFileName[j] = 0;
return TRUE;
}
bool GetFilePath(CString & sFileName)
{
GetModuleFileName(NULL, sFileName.GetBufferSetLength(MAX_PATH+1), MAX_PATH);
sFileName.ReleaseBuffer();
int nPos = sFileName.ReverseFind('\\');
sFileName = sFileName.Left(nPos);
return TRUE;
}