如何檢查目錄是否已經存在於MFC(VC++)中? 我正在使用下面的代碼來獲取當前的應用程序路徑,在那裏我正在創建NDSLog文件夾 ,以便我所有的日誌文件應該放在那裏,現在我想檢查條件如果NDSLog文件夾已經存在不要創建它。怎麼做?如何檢查目錄是否已經存在於MFC(VC++)中?
謝謝。
char strPathName[_MAX_PATH];
::GetModuleFileName(NULL, strPathName, _MAX_PATH);
// The following code will allow you to get the path.
CString newPath(strPathName);
int fpos = newPath.ReverseFind('\\');
if (fpos != -1)
newPath = newPath.Left(fpos+1);
newPath += "NDSLog\\" ;
CreateDirectory(newPath,NULL);
我可以插入一個請求,不要把你的日誌放在當前目錄下嗎?在Vista和Windows 7上,非升級(換言之,普通)應用程序不能在Program Files下的任何地方寫入。由於您今天正在編寫此代碼,而您正在爲Windows編寫代碼,請使用AppData(CSIDL_APPDATA)作爲日誌。爲您的應用程序創建一個子目錄,並且如果您喜歡另一個針對日誌的子目錄。 – 2010-11-27 19:29:32