打印本文 打印本文  关闭窗口 关闭窗口  
用C++程序删除文本文件中以“//”开头的行
作者:佚名  文章来源:不详  点击数  更新时间:2008/4/18 16:07:47  文章录入:杜斌  责任编辑:杜斌

  VC++只提供了删除一个空目录的函数,而用往往希望删除其下有很多子目录与文件的目录。为了实现这一功能,下面编写了DeleteDirectory 函数,它可以实现这一功能。
  函数原型:BOOL DeleteDirectory(char *DirName);
  返回值:成功删除时返回TRUE,否则返回FALSE
  参数DirName为要删除的目录名,必须为绝对路径名,如“c:\\temp"。
  函数定义如下:
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;

}

 

打印本文 打印本文  关闭窗口 关闭窗口