c++中如何删除文件

ofstream可以生成文件

那删除呢?

例如删除一个p3.dat

请写得详细点,谢谢

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

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

system("rm p3.dat");

在Windows下可以调用DOS命令

#include <stdlib.h>

void main()

{

扩展资料:

反之创建文件

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;

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-12

在C++标准库函数中有remove()函数供文件删除使用。

头文件: stdio.h

声明: int remove(char * filename);

功能:删除filename指定的文件,成功返回0,失败返回-1,具体错误值存在errno中。

可能的errno值为:

      EROFS 欲写入的文件为只读文件。

      EFAULT 参数filename 指针超出可存取内存空间。

      ENAMETOOLONG 参数filename 太长。

      ENOMEM 核心内存不足。

      ELOOP 参数filename 有过多符号连接问题。

      EIO I/O 存取错误。

第2个回答  推荐于2017-10-01
方法一:在Windows下可以调用DOS命令
#include <stdlib.h>
void main()
{
system("del 路径:\p3.dat ");
}

______________________________________________________________________
方法二:
Windows 中 如果使用 32 位编译器 可以使用 windows API DeleteFile

BOOL DeleteFile(LPCTSTR lpFileName);//lpFileName是文件名

#include <windows.h>

int main(void)
{
DeleteFile("c:\\p3.dat");//这里假设p3.dat在C盘根目录
}本回答被提问者采纳
第3个回答  2009-08-13
1. 采用系统指令,如rm/del,调用system函数来做;
2. 采用unlink、remove等系统调用函数来做,具体查一下手册。
第4个回答  2009-08-13
Windows 中 如果使用 32 位编译器 可以使用 windows API DeleteFile

BOOL DeleteFile(LPCTSTR lpFileName);//lpFileName是文件名

#include <windows.h>

int main(void)
{
DeleteFile("c:\\1.txt");
}
相似回答