![](/notes/imgs/wechat-color.jpg)
8.4 文件流操作-fstream
发布时间:
基础用例1:
js
#include <fstream> // ofstream ifstream 类需要包含的头文件。
using namespace std;
int main() {
ofstream fout;
ifstream fin;
fout.open("fstream_out.txt");
fin.open("fstream_in.txt");
int a;
fin >> a;
fout << a;
fout.close();
fin.close();
return 0;
}
进阶用例2:
js
#include <fstream> // ifstream 类需要包含的头文件。
#include <iostream>
#include <string> //getline() 函数需要包含的头文件。
using namespace std;
int main() {
ifstream fin;
fin.open("fstream_in.txt");
ofstream fout;
fout.open("fstream_out.txt");
if (fin.is_open() == false) { // 失败原因 1 目录不存在,2 磁盘空间已满,3 没权限,Linux平台常见。
cout << " 打开文件失败" << endl;
}
// 第一种方法
string buffer;
while (getline(fin, buffer)) {
cout << buffer << endl;
}
// 第二种方法
char buffers[101]; // 存放从文件中读取的内容
// 注意:如果采用ifstream.getline(),一定要保证缓冲区足够大。
// getline 为fin 的getling 不是string包中的getline()
while (fin.getline(buffers, 100)) {
cout << buffers << endl;
}
// 第三种方法 第一种的简写
string buffer3;
while(fin>>buffer3){
cout<<buffer3<<endl;
}
fin.close();
cout << "文件操作完成" << endl;
return 0;
}