c语言编程中怎么实现数据的覆盖!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言编程中怎么实现数据的覆盖!相关的知识,希望对你有一定的参考价值。

比如说我首先初始化数据,输入name 0 0;这个数据会保存在txt文件里面。
后面会做修改,假如改为cccc 100 200,也会保存在文件里面,但是不能覆盖前面数据,txt文件里会有两个记录,1 name 0 0
1 cccc 100 100
但是我不想要前面的数据。这就好比银行卡,先出现一个新卡,然后将新卡修改数据给一个用户。然后我想说的是我开了这个卡后就不需要前面的那条数据了,否则下次再给一个用户开户的时候就又会使用到前面的数据,没有实现我的目的。
我就是想用过那条数据后,那个数据就会被覆盖然后保存在我的txt文件里面。请问怎么实现?
另外我的保存函数是这样的:void save(int n) /*保存函数*/
FILE *fp;
if((fp=fopen("USER.txt","a"))==NULL)
printf("\nCannot open file\n");
exit(0);
fprintf(fp,"%d %s %f %d\n",user[n].num,user[n].name,user[n].money,user[n].score);
fclose(fp);

请高人指点,感激不尽!!!

参考技术A 用读写r+ 或 w+ 方法打开。
if((fp=fopen("USER.txt","r+"))==NULL)

任何时候想回到文件一开始,就用回绕函数:
rewind(fp);
这样再写就覆盖了。

"a" 打开来 是 从文件尾开始添加新内容。

以上是关于c语言编程中怎么实现数据的覆盖!的主要内容,如果未能解决你的问题,请参考以下文章

c语言中怎样在文件写入时换行?

C语言中怎样实现对数组数据的删除、修改?

C语言写入文件,文件操作

在C语言中,fopen一个文件 如何能够在写入新的数据覆盖原文件中指定长度的内容

易语言GDI自绘中怎么实现这个效果~!!

C语言关于文件的操作