请求高手帮助!如何用c++文件流实现从一个文件中读取数据,完成操作后把新的数据写入同一个文件中去??

请求高手帮助!如何用c++文件流实现从一个文件中读取数据,完成操作后把新的数据写入同一个文件中去??要求覆盖原来旧的数据,最好有代码范例,谢谢了!... 请求高手帮助!如何用c++文件流实现从一个文件中读取数据,完成操作后把新的数据写入同一个文件中去??要求覆盖原来旧的数据,最好有代码范例,谢谢了! 展开
 我来答
百度网友d6badd2
2012-04-13
知道答主
回答量:2
采纳率:0%
帮助的人:3336
展开全部
"r"(只读)
为输入打开一个文本文件,不存在则失败

"w"(只写)
为输出打开一个文本文件,不存在则新建,存在则删除后再新建

"a"(追加)
向文本文件尾部增加数据,不存在则创建,存在则追加

'rb"(只读)
为输入打开一个二进制文件,不存在则失败

"wb"(只写)
为输入打开一个二进制文件,不存在则新建,存在则删除后新建

"ab"(追加)
向二进制文件尾部增加数据,不存在则创建,存在则追加

"r+"(读写)
为读写打开一个文本文件,不存在则失败

"w+" (读写)
为读写建立一个新的文本文件,不存在则新建,存在则删除后新建

"a+"(读写)
为读写打开一个文本文件,不存在则创建,存在则追加

"rb+"(读写)
为读写打开一个二进制文件,不存在则失败

"wb+"(读写)
为读写建立一个新的二进制文件,不存在则新建,存在则删除后新建

"ab+"(读写)
为读写打开一个二进制文件,不存在则创建,存在则追加

把wb改成ab!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hunnully
2012-04-12 · TA获得超过224个赞
知道答主
回答量:173
采纳率:0%
帮助的人:140万
展开全部
我记得我当初学文件流的时候,是纠结怎么不覆盖数据在文件末尾写入。
如果需要覆盖的话,直接写就可以了。
追问
关键是程序运行后文件里的内容在读入之前就清空了,导致没有数据输入,不知道为什么。。。
追答
你别直接把输入流和输出流一起用,
先用输入流把数据存起来。存在一个合适的地方,比如数组、容器什么的。
处理之后再用输出流。

比如说文件里面的是一些数字,需要把它们排序之后再存放,可以这样处理:
freopen("路径", "rt", stdin);
int num;
vector nums;
cin >> num;
nums.push_back(num);
sort(nums.begin(), nums.end());
freopen("路径", "wt", stdout);
for(vector ::iterator iter = nums.begin(); iter != nums.end(); iter ++)
cout << *iter << " ";

上面这段代码是把文件中的数字进行排序。我用的是容器。当然数组是一样的。
关键是思路:先把文件里面的数据用临时变量存起来,处理之后再放入。

不知道你明白了没~~~
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
马备_mabei
2012-04-13
知道答主
回答量:7
采纳率:0%
帮助的人:2.9万
展开全部
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
int a[10];
ifstream iffile("f1.txt",ios::in);

ofstream ofile("f1.txt",ios::out);
if(!ofile||!iffile)
{
cerr<<" error!"<<endl;
exit(1);
}
for(int i=0;i<10;i++)
{
iffile>>a[i];
a[i]+=10;
cout<<a[i]<<" ";
ofile<<a[i]<<" ";
}
ofile.close();
iffile.close();
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
云雅霜8J
2012-04-13 · TA获得超过129个赞
知道小有建树答主
回答量:182
采纳率:0%
帮助的人:129万
展开全部
ofstream file("1.txt",ios_base::app | ios_base::binary);
ifstream file("1.txt",ios::in | ios::binary);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式