我们都知道,程序运行在计算机的内存中,一旦运行结束或机器关闭,所有的数据都会消失。
为了能够长时间的保持数据,我们需要把数据保存在内存外的其他地方,通常是放置于外存储设备上,一般以各种格式的文件来存放。
我们之前讲过 C 语言操作文件的方法:
因为 C 是 C++ 的子集,这些方法在 C++ 语言中仍然适用。
但 C++ 也有自己处理文件的方式,今天,我们就来学习 C++ 语言操作文件的方法。
在 C++ 中,fstream
标准库包含着文件操作的方法,在其中包含着三种处理数据类型:
ofstream
创建并写入文件,可用 fstream
替代ifstream
指定并读取文件,可用 fstream
替代fstream
是 ofstream
和 ifstream
的结合如果我们需要创建文件,读写文件的多种操作,需要引入 iostream
和 fstream
即可。
下面,我们使用精简的代码演示 C++ 的文件操作。
先看代码示例:
#include <iostream>
#include <fstream>
using namespace std;
int main() {
// 创建 data.out
ofstream data("data.out");
// 写入数据 1 2 3
data << "1 2 3";
// 关闭文件
data.close();
return 0;
}
/*
data.out:
1 2 3
*/
总结:
ofstram
创建文件<<
向文件写入数据我们先来看读文件的示例:
#include <iostream>
#include <fstream>
using namespace std;
int main() {
// 读取文件 data.in
ifstream data("data.in");
// 循环读取每一行
string line;
while (getline(data, line)) {
cout << line << endl;
}
// 关闭文件
data.close();
return 0;
}
/*
data.in:
1 2 3
4 5 6
output:
1 2 3
4 5 6
*/
总结:
ifstream
定义要读的文件while
循环读取每一行数据