c++中如何删除文件

ofstream可以生成文件那删除呢?例如删除一个p3.dat请写得详细点,谢谢... ofstream可以生成文件

那删除呢?

例如删除一个p3.dat

请写得详细点,谢谢
展开
 我来答
大野瘦子
高粉答主

推荐于2019-08-17 · 繁杂信息太多,你要学会辨别
知道小有建树答主
回答量:1227
采纳率:100%
帮助的人:34.7万
展开全部

可以通过 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;

}

风若远去何人留
推荐于2017-10-12 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450134
专业C/C++软件开发

向TA提问 私信TA
展开全部

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

头文件: stdio.h

声明: int remove(char * filename);

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

可能的errno值为:

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

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

  3.   ENAMETOOLONG 参数filename 太长。

  4.   ENOMEM 核心内存不足。

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

  6.   EIO I/O 存取错误。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友0234896b4
推荐于2017-10-01 · TA获得超过549个赞
知道小有建树答主
回答量:382
采纳率:0%
帮助的人:300万
展开全部
方法一:在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盘根目录
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
踏岸寻柳
2009-08-13 · TA获得超过6912个赞
知道小有建树答主
回答量:1776
采纳率:0%
帮助的人:640万
展开全部
1. 采用系统指令,如rm/del,调用system函数来做;
2. 采用unlink、remove等系统调用函数来做,具体查一下手册。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友e9042513a
2009-08-13 · TA获得超过6985个赞
知道大有可为答主
回答量:2388
采纳率:0%
帮助的人:3515万
展开全部
Windows 中 如果使用 32 位编译器 可以使用 windows API DeleteFile

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

#include <windows.h>

int main(void)
{
DeleteFile("c:\\1.txt");
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式