当前位置:首页 » 文件管理 » c如何删除文件夹

c如何删除文件夹

发布时间: 2022-08-30 15:00:54

❶ 怎么用c语言删除一个文件夹

可以用 rmdir() 函数,需要包含头文件 direct.h, 还有一点需要注意,文件夹内是空的才可以删除掉。下面是一个删除d: emp文件夹,代码如下:

#include<stdio.h>
#include<stdlib.h>
#include<direct.h>

intmain()
{
rmdir("D:\temp");

system("pause");
return0;
}

❷ 将C:/LianXi文件夹中的所有文件和文件夹直接从硬盘删除操作步骤

C盘都是系统文件,删错很容易出问题,可以使用系统自带的清理程序进行清理。

如下参考:

1.单击桌面左下角的“开始”菜单,然后单击“设置”图标。

❸ c语言怎么删除文件夹里所有文件

如果想简单
就直接调用系统命令
比如 windows下
system("delete xxxx\\*");
Linux下
system("rm xxxx/*")

如果想用纯C接口
先opendir
然后循环遍历readdir
依次调用remove 函数删除文件。

❹ c语言怎么彻底删除文件

可以的。
显示在列表的就是普通文件, 到文件夹删除后,就是彻底删除。
不会重复生成的。

❺ c\c++怎样删除文件夹

第一种方法
1.SHFileOperation

SHFILEOPSTRUCT FileOp;
ZeroMemory((void*)&FileOp,sizeof(SHFILEOPSTRUCT));

FileOp.fFlags = FOF_SILENT|FOF_NOCONFIRMATION;
FileOp.hNameMappings = NULL;
FileOp.hwnd = NULL;
FileOp.lpszProgressTitle = NULL;
FileOp.pFrom = lpszPath;
FileOp.pTo = NULL;
FileOp.wFunc = FO_DELETE;

SHFileOperation(&FileOp);
如果加了FOF_SILENT标志,那么在函数调用的时候,即使出错,也不会弹框提示,但是,今天发现,如果这个目录是共享的,依然还是会弹框提示。不知道是不是一个Bug呢?

2.CFileFind

bool DeleteDirectory(char* strDirName)
{
CFileFind tempFind;
char strTempFileFind[MAX_PATH];

sprintf(strTempFileFind,"%s\\*.*", strDirName);
BOOL IsFinded = tempFind.FindFile(strTempFileFind);
while (IsFinded)
{
IsFinded = tempFind.FindNextFile();

if (!tempFind.IsDots())
{
char strFoundFileName[MAX_PATH];
strcpy(strFoundFileName, tempFind.GetFileName().GetBuffer(MAX_PATH));

if (tempFind.IsDirectory())
{
char strTempDir[MAX_PATH];
sprintf(strTempDir,"%s\\%s", strDirName, strFoundFileName);
DeleteDirectory(strTempDir);
}
else
{
char strTempFileName[MAX_PATH];
sprintf(strTempFileName,"%s\\%s", strDirName, strFoundFileName);
DeleteFile(sTempFileName);
}
}
}
tempFind.Close();
if(!RemoveDirectory(strDirName))
{
return FALSE;
}
return TRUE;
}
这个主要通过递归的方法,依次删除文件,直到目录为空,删除目录、文件夹。
第二种
//这是用vc的方法:

bool MyDeleteFile(char * lpszPath)
{
SHFILEOPSTRUCT FileOp={0};
FileOp.fFlags = FOF_ALLOWUNDO | //允许放回回收站
FOF_NOCONFIRMATION; //不出现确认对话框
FileOp.pFrom = lpszPath;
FileOp.pTo = NULL; //一定要是NULL
FileOp.wFunc = FO_DELETE; //删除操作
return SHFileOperation(&FileOp) == 0;
}

void MyDialog::OnButton3()
{
// MyDeleteFile("d:\\PID\0\0"); //删除一个文件夹
MyDeleteFile("d:\\PID.dsp\0d:\\PID.dsw\0\0"); //删除多个文件
}

void MyDialog::OnButton3()
{
// MyDeleteFile("d:\\PID\0\0"); //删除一个文件夹
MyDeleteFile("d:\\PID.dsp\0d:\\PID.dsw\0\0"); //删除多个文件
}

热点内容
qq源码资源网 发布:2024-10-12 23:23:52 浏览:19
为什么web服务器没有对应的站点 发布:2024-10-12 22:55:46 浏览:780
安卓手机在哪里下游戏 发布:2024-10-12 22:54:08 浏览:406
财年算法问题 发布:2024-10-12 22:51:50 浏览:314
sql最近的 发布:2024-10-12 22:51:38 浏览:335
linuxsort命令 发布:2024-10-12 22:32:58 浏览:919
德州电气自动化软件编译 发布:2024-10-12 22:18:14 浏览:853
win7系统怎么清理ftp 发布:2024-10-12 22:08:17 浏览:873
linux查看所有目录 发布:2024-10-12 22:07:05 浏览:16
协同演化算法 发布:2024-10-12 21:40:53 浏览:700