使用getline可以实现按行读取指定文件,如果使用cin可以实现逐单词读取文件。
#include <iostream>
#include <string>
#include <vector>
#include <fstream>
using namespace std;
int main()
{
ifstream readFile;
readFile.open(R"(C:\Users\zty19\Desktop\cpp\clion\file.txt)");
vector<string> file_in;
if (readFile){
cout << "文件打开成功!" << endl;
string temp;
while (getline(readFile, temp))
file_in.push_back(temp);
}
else
cerr << "文件打开失败!" << endl;
readFile.close();
//打印读取的输出
for(const auto& i : file_in)
cout << i << endl;
return 0;
}
打印结果如下:
![](https://img-blog.csdnimg.cn/img_convert/c1b089aaf376f744cb4c2dcd48f7ea7d.png)
现在定义一个ofstream对象,将按行读入vector的句子,按单词输出给文本文件
ofstream outTXT(R"(C:\Users\zty19\Desktop\cpp\clion\result.txt)");
if (outTXT)
{
cout << "输出文件创建成功!" << endl;
for (auto it = file_in.begin(); it != file_in.end(); ++it){
outTXT << *it << endl;
}
}
结果如下:
![](https://img-blog.csdnimg.cn/img_convert/4c5e6aeb0a4aaf4a14354bfdfc3aff69.png)