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

热点内容
光遇安卓怎么平地滑行 浏览:157
常州php培训 浏览:447
油气田开发pdf 浏览:930
家有带宽和服务器带宽有什么区别 浏览:902
windows下编译c语言开发工具 浏览:224
守望之海服务器地址在那 浏览:903
程序员毕业后薪资 浏览:199
app买菜退款麻烦在哪里举报 浏览:768
redis一致性hashphp 浏览:649
如何导入浏览器文件夹 浏览:551
python爬虫游戏 浏览:234
androidlogcat颜色 浏览:674
不用钱解压软件 浏览:552
安卓手机用什么软件开发 浏览:249
我的世界服务器怎么设置领地语 浏览:109
苹果导安卓照片用什么软件 浏览:362
如何在苹果电脑上绑定qq邮箱服务器地址 浏览:864
我的世界服务器如何防止小号 浏览:401
md5加解密算法 浏览:388
如何用服务器开代理 浏览:596