您的位置:首页 > 编程语言 > C语言/C++

Windows下如何用C语言清空特定文件夹中的所有文件

2012-08-22 20:46 323 查看


#include "iostream.h" //由于该博客系统发布是不能显示正常,代码如需调试,只需将改成""即可

#include "string.h"

#include "stdlib.h"

#include "time.h"

#include "math.h"

#include "windows.h"

#include "stdio.h"

#include "shellapi.h"

#include "fstream.h"

#include "string"

using namespace std;

void main()

{

//清空特定文件夹中的所有文件

char* a=".";

char* b="";

WIN32_FIND_DATA FileData,FileData_0;

HANDLE hSearch,hSearch_0;

BOOL fFinished=FALSE;

hSearch=FindFirstFile("C:\\experiment\\results_stat\\*.*",&FileData); //输入特定文件的绝对路径名

if(hSearch==INVALID_HANDLE_VALUE)

{

printf("No files found.");

return;

}

while(!fFinished)

{

if(FileData.cFileName[0]!=a[0]){

b=FileData.cFileName;

string addr=string("C:\\experiment\\results_stat\\")+string(b)+string("\\")+string("*.*"); //输入特定文件的绝对路径名

hSearch_0=FindFirstFile(addr.c_str(),&FileData_0);

while(FindNextFile(hSearch_0, &FileData_0)){

if(FileData_0.cFileName[0]!=a[0]){

string addr_0=string("C:\\experiment\\results_stat\\")+string(b)+string("\\")+FileData_0.cFileName; //输入特定文件的绝对路径名

DeleteFile(addr_0.c_str()); //清空特定文件夹中的子文件夹中的所有文件

}

}

}

if(!FindNextFile(hSearch,&FileData))

{

if(GetLastError()==ERROR_NO_MORE_FILES)

{

fFinished=TRUE;

}

else

{

printf("Couldn't find next file.");

return;

}

}

}

FindClose(hSearch);

FindClose(hSearch_0);

}



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: