文件读写操作!

zhuxianjun1 2008-08-20 05:35:47
怎么实现以下功能呢:
1)读文件file1.txt的内容(例如):
12
34
56
输出到file2.txt:
56
34
12
(逆序)
...全文
77 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
whuyotc 2008-08-20
  • 打赏
  • 举报
回复
include <string>
#include <vector>
#include <fstream>
#include <iostream>
using namespace std;
void main()
{
ifstream in("file1.txt");
if(!in)
{
cerr<<"error!";
return ;
}
string line;
vector <string> svec;
while(getline(in,line))
{
svec.push_back(line);
}
in.close();
ofstream out("file2.txt");
vector<string>::reverse_iterator it;
for(it=svec.rbegin();it!=svec.rend();it++)
out<<(*it)<<endl;
out.close();
}


4楼的不要见怪哦,我觉得
是不是将
while(in>>line)
{
svec.push_back(line);
}

改为
while(getline(in,line))
{
svec.push_back(line);
}
比较好呢?
这样你的每一行输入有空格的时候,也能够进行逆转

lzr4304061988012 2008-08-20
  • 打赏
  • 举报
回复
2楼强;
我也试试;


#include <string>
#include <vector>
#include <fstream>
#include <iostream>
using namespace std;
void main()
{
ifstream in("file1.txt");
if(!in)
{
cerr<<"error!";
return ;
}
string line;
vector <string> svec;
while(in>>line)
{
svec.push_back(line);
}
in.close();
ofstream out("file2.txt");
vector<string>::reverse_iterator it;
for(it=svec.rbegin();it!=svec.rend();it++)
out<<(*it)<<endl;
out.close();
}

ttkk_2007 2008-08-20
  • 打赏
  • 举报
回复
将file1.txt里面的内容读到stack里面
然后,输出到file2.txt里面
  • 打赏
  • 举报
回复
#include<vector>
#include<iostream>
#include<algorithm>
#include<fstream>
int main(int , char* [])
{
std::vector<int> vbef( std::istream_iterator<int>(std::ifstream("11.txt") ) , std::istream_iterator<int>() );
std::copy( vbef.rbegin(),vbef.rend(),std::ostream_iterator<int>(std::ofstream("22.txt") , "\n") );
return 0;
}
Alpha_Gu 2008-08-20
  • 打赏
  • 举报
回复
将内容读到一个数组里,然后倒过来输出啊。

64,648

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧