用C++程序删除文本文件中以“”开头的行
c++只提供了删除一个空目录的功能,但是经常想删除目录下有很多子目录和文件的目录。为了实现这个功能,下面写了DeleteDirectory函数,可以实现这个功能。
函数原型:bool删除目录(char * dirname);
返回值:删除成功返回TRUE,否则返回FALSE
参数DirName是要删除的目录名,必须是绝对路径名,如“c:\temp”。
该函数定义如下:
bool delete director(char * dirname)
{
CFileFind tempFind
char tempfile find[200];
sprintf(tempFileFind," %s\*。*,目录名);
BOOL is find =(BOOL)temp find。FindFile(tempfile find);
while(is find)
{
is find =(BOOL)temp find。FindNextFile();
如果(!临时查找。IsDots())
{
char found filename[200];
strcpy(foundFileName,tempFind。GetFileName()。get buffer(200));
if(tempFind。IsDirectory())
{
char tempDir[200];
sprintf(临时目录," %s\%s ",目录名,找到文件名);
delete directory(tempDir);
}
其他
{
char temp filename[200];
sprintf(tempFileName," %s\%s ",DirName,found filename);
DeleteFile(临时文件名);
}
}
}
临时查找。close();
如果(!remove电路(目录名))
{
MessageBox(0,"未能删除目录!",“警告信息”,MK _ OK);
返回FALSE
}
返回TRUE
}
0条评论