C++ vector进行文本文件读取
然后我要修改vector里面的每个元素,进行erase()insert()操作,再输出到文本。怎么...
然后我要修改vector里面的每个元素,进行erase() insert()操作,再输出到文本。怎么
展开
展开全部
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
using namespace std;
int main()
{
vector<string> v,v2;
ifstream fin("a.txt");
ofstream fout("b.txt");
if(fin && fout){
string line;
while(getline(fin,line))v.push_back(line);
v2.assign(v.begin(),v.end());
vector<string>::iterator it;
for(it=v.begin();it!=v.end();)
{
cout<<*it<<endl;
it=v.erase(it);
}
for(it=v2.begin();it!=v2.end();++it)v.insert(v.begin(),*it);
cout<<"---------"<<endl;
for(it=v.begin();it!=v.end();++it){
cout<<*it<<endl;
fout<<*it<<endl;
}
}else{
cerr<<"can not open file"<<endl;
}
return 0;
}
#include <fstream>
#include <string>
#include <vector>
using namespace std;
int main()
{
vector<string> v,v2;
ifstream fin("a.txt");
ofstream fout("b.txt");
if(fin && fout){
string line;
while(getline(fin,line))v.push_back(line);
v2.assign(v.begin(),v.end());
vector<string>::iterator it;
for(it=v.begin();it!=v.end();)
{
cout<<*it<<endl;
it=v.erase(it);
}
for(it=v2.begin();it!=v2.end();++it)v.insert(v.begin(),*it);
cout<<"---------"<<endl;
for(it=v.begin();it!=v.end();++it){
cout<<*it<<endl;
fout<<*it<<endl;
}
}else{
cerr<<"can not open file"<<endl;
}
return 0;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询