如何将文件读出来的数据修改下在存回去

wshcy512 2009-10-13 10:33:48
比如文件存储如下
1
2
3
现在我将2读出来,修改为4,在将他保存到文件,其他内容不变,请问怎么实现?
...全文
87 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wshcy512 2009-10-15
  • 打赏
  • 举报
回复
没人回答 只能给你了
wshcy512 2009-10-13
  • 打赏
  • 举报
回复
谢谢回答,不过我想你理解错我的意思了

FILE *fd;
AAA a; //AAA是个结构体
int i=0;
int j=2;
fd = fopen("aaa.txt", "r+"); //文件保存10条以AAA为结构的数据
if( fd == NULL)
return;

for(i=0; i<10; i++)
{
if( fread(&a, 1, sizeof(a), fd) == 0)
break;
if (i == j)
{
strcpy(a.name, "12345678");
if (fwrite(&a, 1, sizeof(a), fd)<=0 )
printf("fwrite failed");
}
//printf("%s\n ", a.a);
}

我想在i==j的情况下,修个他的名字,然后在保存进文件,可是发现这样写,他并没有修改成功?
wanjingwei 2009-10-13
  • 打赏
  • 举报
回复
#include "iostream"
using namespace std;

int main(void)
{
FILE *p,*p2;
p=fopen("1.txt","r");
int a[10];
int i=0;
while(!feof(p))
{

fscanf(p,"%d",&a[i]);
i++;
}
fclose(p);
a[1]=4;
p2=fopen("1.txt","w");
for(int j=0;j<i;j++)
fprintf(p2,"%d\n",a[j]);

fclose(p2);
return 0;
}

70,020

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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