龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > C/C++开发 >

用C++程序删除文本文件中以“//”开头的行

时间:2009-12-22 15:42来源:未知 作者:admin 点击:
分享到:
VC++只提供了删除一个空目录的函数,而用往往希望删除其下有很多子目录与文件的目录。为了实现这一功能,下面编写了DeleteDirectory 函数,它可以实现这一功能。 函数原型:BOOL

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;

  

  }

  

精彩图集

赞助商链接