栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言递归删除所有空文件夹,包括文件名称有空格

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言递归删除所有空文件夹,包括文件名称有空格

直接上代码:
int delete_folder_file(const char dir)
{
intptr_t handle;
struct _finddata_t findData;
char dirNew[500];
strcpy_s(dirNew, strlen(dir) + 1, dir);
strcat_s(dirNew, strlen(dirNew) + 4, “*”);
if ((handle = _findfirst(dirNew, &findData)) == -1)
{
printf(“Failed to findfrist file”);
return -1;
}
while (_findnext(handle, &findData) == 0)
{
//findData.attrib & _A_SUBDIR 为0 说明不是文件夹
if (findData.attrib & _A_SUBDIR)
{
//strcmp 比较,如果相等就是0
if (strcmp(findData.name, “.”) == 0 || strcmp(findData.name, “…”) == 0)
//printf(“delete_empty_folder: % sn”, dirNew);
continue;
strcpy_s(dirNew, strlen(dir) + 1, dir);
strcat_s(dirNew, strlen(dirNew)+ 3, “”);
strcat_s(dirNew, strlen(dirNew) + strlen(findData.name) + 1, findData.name);
delete_folder_file(dirNew);
}
else
{
continue;
}
//重组路径
int x = 0, z = 0;
char y[100] = { 0,0 }; //最终删除地址
while (dirNew[x] != ‘’)
{
if (dirNew[x] == ‘’ && x == 2) //判断D:后面的那个/
{
strcat(y, “”“);
z++;
}
else
{
y[z] = dirNew[x];
}
z++;
x++;
}
char del[500] = {‘r’, ‘d’, ’ ', ‘/’, ‘q’, ’ '};
strcat(y, “””);
strcat_s(del, 500, y);
printf("%s ", y);
printf(“delete empty folder: %sn”, del);
system(del);
}
_findclose(handle);
return 0 ;
}*

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/951915.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号