| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 376 人关注过本帖
标题:文件追加 不了,为什么?
取消只看楼主 加入收藏
聪儿
Rank: 1
等 级:新手上路
帖 子:75
专家分:3
注 册:2012-9-2
结帖率:77.78%
收藏
已结贴  问题点数:20 回复次数:3 
文件追加 不了,为什么?
程序运行结果:
图片附件: 游客没有浏览图片的权限,请 登录注册


#include<iostream>
 #include <algorithm>
 using namespace std;
 
int main()
 {
 int a[3][10],i;
 FILE * fp;
 if((fp=fopen("b.txt","a+"))==NULL) //以读写方式打开文件
cout<<"fopen error!"<<endl;
 
for(int j=0;j<3;j++) //读文件
for(i=0;i<10;i++)
 {
 fscanf(fp,"%d",&a[j][i]);
 }
 
for(i=0;i<3;i++)   //排序
sort(a[i],a[i]+10);
 
for(j=0;j<3;j++)
 for(i=0;i<10;i++) //输出到文件末尾
{
printf("%4d",a[j][i]);
 fprintf(fp,"%4d",a[j][i]);
 }
 
fclose(fp);
 
return 0;
 }
 
代码如上示,我的b.txt中有30个数字。目的是读出来之后 以10个为一组排序,然后追加到该文件末尾。
 

运行结果如上示
 
但是发现 只能读出和排序没有办法追加的文件末尾,这个是什么原因呢?请大神们指导一下,多谢!
搜索更多相关主题的帖子: include return 
2012-11-24 11:05
聪儿
Rank: 1
等 级:新手上路
帖 子:75
专家分:3
注 册:2012-9-2
收藏
得分:0 
初学者,这个还是想稍微搞懂一点 啊。、
2012-11-24 12:52
聪儿
Rank: 1
等 级:新手上路
帖 子:75
专家分:3
注 册:2012-9-2
收藏
得分:0 
回复 4楼 wp231957
您的不太明白。

假若是因为这个原因,那应该是排序后的覆盖最初的数据,但是这个还是最初的数据啊。。
2012-11-26 12:40
聪儿
Rank: 1
等 级:新手上路
帖 子:75
专家分:3
注 册:2012-9-2
收藏
得分:0 
确实是fseek的原因。
2012-11-29 09:18
快速回复:文件追加 不了,为什么?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013811 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved