用C++程式刪除文字檔案中以“//”開頭的行(轉)

ba發表於2007-08-15
用C++程式刪除文字檔案中以“//”開頭的行(轉)[@more@]VC++只提供了刪除一個空目錄的函式,而用往往希望刪除其下有很多子目錄與檔案的目錄。為了實現這一功能,下面編寫了DeleteDirectory 函式,它可以實現這一功能。
函式原型:BOOL DeleteDirectory(char *DirName);
返回值:成功刪除時返回TRUE,否則返回FALSE
引數DirName為要刪除的目錄名,必須為絕對路徑名,如“c: emp"。
函式定義如下:

BOOL DeleteDirectory(char *DirName)

{

CFileFind tempFind;

char tempFileFind[200];

sprintf(tempFileFind,"%s*.*",DirName);

BOOL IsFinded=(BOOL)tempFind.FindFile(tempFileFind);

while(IsFinded)

{

IsFinded=(BOOL)tempFind.FindNextFile();

if(!tempFind.IsDots())

{

char foundFileName[200];

strcpy(foundFileName,tempFind.GetFileName().GetBuffer(200));

if(tempFind.IsDirectory())

{

char tempDir[200];

sprintf(tempDir,"%s\%s",DirName,foundFileName);

DeleteDirectory(tempDir);

}

else

{

char tempFileName[200];

sprintf(tempFileName,"%s\%s",DirName,foundFileName);

DeleteFile(tempFileName);

}

}

}

tempFind.Close();

if(!RemovwDirctory(DirName))

{

MessageBox(0,"刪除目錄失敗!","警告資訊",MK_OK);

return FALSE;

}

return TRUE;

}

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617731/viewspace-957388/,如需轉載,請註明出處,否則將追究法律責任。

相關文章