一、单个读入读出
#include <iostream>
#include <fstream>
using namespace std;
int main(){
ifstream ifs("./string.cpp");
if(ifs){// 判断文件流对象是否ok
string s;
while(!ifs.eof()){//判断文件是否结束
ifs >> s;
cout << s << endl;
}
}else{
cerr << "文件打开失败" << endl;
}
// ifs.close();
// ...此处有处理
// ifs.open();
ofstream ofs("./test.txt");
if(ofs){
ofs << "abc" << 123 << endl;
}else{
cerr << "文件打开失败" << endl;
}
}
二、可打开关闭
打开文加,然后给一个文件名fs(文件路径,ios::输入 | ios:: 输出)
- 判断是否打开了文件
- 打开了则定一个string s;的字符串,,s作为接受信息的字符串
- 循环读出文件里的东西fs >> s
- 然后打印在终端 cout << s << endl;
- 由于此时读取指针指在了eof接下来是什么都读不出来的所以要清除eof标志以便接下来的写入操作
- 循环写入操作 cin >> s;
- 将终端字符串读如到字符串中
- 然后将s写入到fs对应的文件中fs << s << endl;
#include <iostream>
#include <fstream>
using namespace std;
int main (){
fstream fs("./test.txt",ios::in | ios::out);
if(fs){
string s;
while(fs >> s){
cout << s << endl;
}
fs.clear();
while(cin >> s){
fs << s << endl;
}
cout << "s:" << s << endl;
}else{
cerr << "打开文件失败" << endl;
}
}