导航:首页 > 文件处理 > c删除文件夹

c删除文件夹

发布时间:2022-01-23 22:54:03

‘壹’ c语言怎样删除文件

首先要说明的是这里并不是指删除C编译器里面的文件,呵呵,如果只是要删除那些文件的话,那就很简单,直接选中文件后按delete键就可以删除了,但是我们删除那些文件干嘛?我们还要用它写程序啊,呵呵。我在这里要说的是,怎样使用C语言编写程序来删除文件。

在C语言中,我们可以使用remove()函数来删除指定的文件,具体语法为:
Int remove(char *filename);其中filename是一个指向字符串的指针,该字符串可以组成有效的文件名,也可以包含路径说明。如果我们要删除D盘下的ABC.txt文件,我们就可以这样写:remove(“D:\ABC.txt”);

‘贰’ c++中如何删除文件

可以通过 system() 函数调用删除文件的系统命令

比如在 Linux 下删除文件的命令是 rm,则在C/C++中删除名为 p3.dat 文件:

system("rm p3.dat");

在Windows下可以调用DOS命令

#include <stdlib.h>

void main()

{

(2)c删除文件夹扩展阅读:

反之创建文件

1、调用Windows API函数 CreateDirectory()和RemoveDirectory(),成功返回0,否则返回非零。

头文件<windows.h>

创建:CreateDirectory()

#include <Windows.h> //头文件

#include<iostream>

using namespace std;

int main()

{

string path = "D:\1";

bool flag = CreateDirectory(path.c_str(), NULL);

return 0;

}

2、调用C运行库函数int mkdir()和int rmdir(),包含头文件<direct.h>

创建:mkdir()

#include<direct.h> //头文件

#include<iostream>

using namespace std;

int main()

{

string path = "D:\1";

mkdir(path.c_str());

return 0;

}

‘叁’ 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"); //删除多个文件
}

‘肆’ 如何在VS里用C语言删除文件夹

删除文件夹可以使用dos命令rd
在C语言中,加入头文件#include <stdlib.h>
在需要删除文件夹的语句位置使用system("rd D:/test")即可

阅读全文

与c删除文件夹相关的资料

热点内容
蛋壳公寓app如何查水电表 浏览:713
ad20库中的51单片机怎么找 浏览:616
阿里云服务器有点卡吗 浏览:204
苹果7如何让app后台运行 浏览:166
耐克app预售产品哪里看 浏览:207
补全算法一年级 浏览:125
evd数据调校软件加密 浏览:440
app听课与微信如何设置分屏 浏览:909
加密的excel怎么撤销 浏览:39
java动态数组初始化 浏览:974
编译后程序块过大不适合 浏览:673
李煜pdf 浏览:843
python写游戏逻辑 浏览:489
pdf转换成word免费版在线转换 浏览:464
荒废了三年还能做程序员吗 浏览:658
阿里云内网vpn服务器 浏览:103
l命令第一个点对第二个点对不上 浏览:829
oracle导出表命令 浏览:910
怎么写域名加密 浏览:1004
手机文件压缩出错 浏览:523