C语言实现清空指定文件夹中所有文件的方法
2015-06-15 10:02
579 查看
本文实例讲述了C语言实现清空指定文件夹中所有文件的方法。分享给大家供大家参考。具体分析如下:
最近笔者在做一个有关计算机视觉的项目,需要对提前的视频帧进行实验,当数据量很大且文件夹中的子文件夹和文件很多时,手工删除这些文件不现实,笔者今天写了一个程序,通过机器自动删除所有相关文件,十分快速,删除时间几乎可以不计。
代码如下,仅供参考。
#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语言程序设计有所帮助。
您可能感兴趣的文章:
相关文章推荐
- 命令行小技巧:读取文件的不同方式
- IE:临时文件保存法
- 文件的读出 编辑 管理
- 文件遍历排序函数
- 在线用表单建立文件夹
- 文件、目录,文本文件等多种操作类
- 处理驱动器和文件夹
- 用vbs删除某些类型文件和磁盘空间报告的脚本
- Ruby实现批量对文件增加前缀代码分享
- C#获取文件夹及文件的大小与占用空间的方法
- PowerShell实现查询打开某个文件的默认应用程序
- bat 文件 学习使用指南
- 用批处理实现的创建带日期的文件夹的代码
- win2003文件夹权限设置脚本代码
- IIS配置文件隐患
- Lua和C语言的交互详解
- Shell中删除某些文件外所有文件的3个方法
- redis中修改配置文件中的端口号 密码方法
- 同步文件备份工具 Super Flexible File Synchronizer Pro v4