导航:首页 > 文件处理 > 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删除文件夹相关的资料

热点内容
怎么看文件是否是日语解压 浏览:353
电影打分python代码 浏览:350
androidjni获取签名 浏览:111
解压文件电脑上哪里找 浏览:447
linuxcutc 浏览:173
金穗蜀道通etc用什么app办理 浏览:123
阿云服务器系统盘与数据盘的区别 浏览:213
gcc编译器可以用于单片机吗 浏览:259
xmanagerlinux配置 浏览:664
文件夹视频没有声音怎么回事 浏览:83
闪闪app是什么软件 浏览:206
win7下引导linux 浏览:793
陕西bgp服务器云主机 浏览:934
ug编程有几种加工方式 浏览:447
锤子手机如何添加桌面文件夹 浏览:465
公司早会拍照用哪个app好 浏览:424
学习打卡声音解压视频 浏览:824
如何使用代理服务器加速上网 浏览:266
找企业负责人电话用什么app 浏览:427
linux创建文本文件命令 浏览:390