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

/*将n=0写入文件,然后读出给m,m自加,再将m=1写入文件,(要求覆盖文件中的n=0),也就是把文件中已经保存的0改为1,这个应该怎么实现*/

#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;

}


Camel97
浏览 2920回答 1
1回答

慕少1414285

一般先打开两个文件(原文件与替换文件);然后把原文件的东西写进去,到替换的那里把替换的写进替换文件;最后删掉原文件并用替换文件替换原文件remove()、rename()这两个函数就是删除与替换的
打开App,查看更多内容
随时随地看视频慕课网APP