文章目录
前言
因为在运行后无论在堆区或栈区产生的数据都在程序执行完毕被系统回收,不会保存,所以若需要保存此次运行的数据可以考率用文件操作,把此次运行的数据储存到文本文件中。
提示:以下是本篇文章正文内容,下面案例可供参考
一、写文件的步骤(5步法)
1.1写文件的步骤
1.引入(引入头文件)
2.创建(创建流对象)
3.打开(open函数打开文件)
4.写入(向打开的文件写入数据)
5.关闭(关闭文件)
#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
#include<string>
#include<fstream>//1.引入操作文件的头文件
using namespace std;
int main()
{
//2.创建流对象
ofstream fout;
//3.打开文件
fout.open("test01.txt",ios::out); //open打开文件,若在此路径下没有则创建一个文件
//4.写数据
fout << "Hello World!" << endl;
fout << 123 << endl; //类似于cout(此时endl也是用于换行)
//5.关闭文件
fout.close();
cout << "写文件操作完成" << endl;
system("pause");
return 0;
}
1.2一些补充说明
1.2.1创建对象的几种方法
1.2.2几种打开方式
如图:如用app方式打开可见运行结果,在文件上次书写结尾追加写入。
同时打开方式也可以配合使用。如:
fout.open("test01.txt",ios::out | ios::binary); 表示写文件 以二进制方式打开。
1.2.3 open函数说明
1.open函数里面有两个参数,第一个是要打开的文件地址,第二个是打开方式。
2.如图可见,也可以用地址方式进行写文件。
3.上图使用转义字符解决地址问题,也可以使用原始字面量的方法,如下。
可以看出追加成功。
二、读文件
1.1读文件的步骤
1.引入(引入头文件)
2.创建(创建流对象)
3.打开(open函数打开文件)
4.读出(读出文件的数据)
5.关闭(关闭文件)
代码如下(示例):
#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
#include<string>
#include<fstream>//1.引入操作文件的头文件
using namespace std;
int main()
{
//2.创建流对象
ofstream fout;
ifstream fin;
//3.打开文件
fin.open(R"(D:\code文件\test1\文件操作\文件操作\test01.txt)",ios::in);
if (fin.is_open() == false) //判断文件是否打开成功 打开成功返回ture 失败则返回false
{
cout << "打开文件失败!" << endl;
//return 0;
}
//4.读数据
string buffer;
while (getline(fin,buffer)) //getline多个重载其中一个 getline 把文件的数据一行一行的读出来
{ //放到buffer中当读取完毕返回空结束循环
cout << buffer << endl; //打印输出到控制台
}
//类似于cout(此时endl也是用于换行)
//5.关闭文件
fin.close();
cout << "读文件操作完成" << endl;
system("pause");
return 0;
}
如图可见读取成功。
总结
本次简单的介绍了一些文件的基础操作,希望可以帮助到大家。