modificar o conteúdo existente do arquivo em c
int main()
{
FILE *ft;
char ch;
ft=fopen("abc.txt","r+");
if(ft==NULL)
{
printf("can not open target file\n");
exit(1);
}
while(1)
{
ch=fgetc(ft);
if(ch==EOF)
{
printf("done");
break;
}
if(ch=='i')
{
fputc('a',ft);
}
}
fclose(ft);
return 0;
}
Como se pode ver que eu quero editarabc.txt
de tal maneira quei
é substituído pora
iniciar.
O programa funciona bem, mas quando abroabc.txt
externamente, parecia não ter sido editado.
Alguma razão possível para isso?
Por que, neste caso, o personagem depoisi
não é substituído pora
, como as respostas sugerem?