c新手吧 关注:8,595贴子:48,089
  • 3回复贴,共1

C语言怎么修改文件里面的内容

只看楼主收藏回复

我想将n=0写入文件,然后读出给m,m自加,再将m=1写入文件,(要求覆盖文件中的n=0),也就是把文件中已经保存的0改为1,这个应该怎么实现
另外。我这个打开和关闭文件和rewind(fp);是不是用的多了点。。在什么地方可以简化
求大神指导
#include<stdio.h>
#include<stdlib.h>
FILE *fp;
int main()
{
int n,m,i;
n=0;
if((fp=fopen("text2.txt","wt+"))==NULL)
{
printf("error");
exit(1);
}
fwrite(&n,sizeof(int),1,fp);
fclose(fp);
if((fp=fopen("text2.txt","rt"))==NULL)
{
printf("error");
exit(1);
}
rewind(fp);
fread(&m,sizeof(int),1,fp);
m++;
fclose(fp);
printf("%d\n",m);
if((fp=fopen("text2.txt","at"))==NULL)
{
printf("error");
exit(1);
}
rewind(fp);
fwrite(&m,sizeof(int),1,fp);
fclose(fp);
if((fp=fopen("text2.txt","rt"))==NULL)
{
printf("error");
exit(1);
}
rewind(fp);
fread(&i,sizeof(int),1,fp);
fclose(fp);
printf("%d",i);
return 0;
}


IP属地:北京1楼2016-01-28 15:31回复
    一年半过去了,楼主怕不是已经是大神了


    IP属地:江苏2楼2017-07-10 17:35
    回复
      快两年半过去了,楼主已经成为大神了吧


      IP属地:广东3楼2018-05-11 12:23
      回复
        4年过去了,楼主应该月入百万了吧


        IP属地:福建来自Android客户端4楼2020-05-04 20:52
        回复