C语言实现清空指定文件夹中所有文件的方法

2025-05-27 0 70

本文实例讲述了C语言实现清空指定文件夹中所有文件的方法。分享给大家供大家参考。具体分析如下:

最近笔者在做一个有关计算机视觉的项目,需要对提前的视频帧进行实验,当数据量很大且文件夹中的子文件夹和文件很多时,手工删除这些文件不现实,笔者今天写了一个程序,通过机器自动删除所有相关文件,十分快速,删除时间几乎可以不计。

代码如下,仅供参考。

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59
#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);

}

希望本文所述对大家的C语言程序设计有所帮助。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 C语言实现清空指定文件夹中所有文件的方法 https://www.kuaiidc.com/75358.html

相关文章

发表评论
暂无评论