1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
|
#include <stdlib.h>
#include <stdio.h>
#include <sys/stat.h>
int main (void)
{
FILE *f=NULL;
char *Text=NULL ;
struct stat buf ;
size_t n = 0 ;
char *chaine = "BONJOUR\n" ;
f = fopen("coucou.txt", "r");
if ( f != NULL )
{
fstat ( fileno(f), &buf );
if ( buf.st_size > 0 )
{
Text = malloc ( buf.st_size );
if ( Text != NULL )
{
n = fread ( (void *)Text, 1, buf.st_size, f );
if ( n != buf.st_size )
fprintf ( stderr, "\nN'ai pas pu lire tout le fichier !!!\n");
}
else
fprintf ( stderr, "\nErreur d'allocation mémoire !!!\n");
}
else
fprintf ( stderr, "\nFichier vide !!!\n");
fclose ( f);
}
else
fprintf ( stderr, "\n Fichier non trouvé ...\n");
if ( n > 0 )
{
f = fopen("coucou.txt", "w");
if ( f != NULL )
{
fprintf ( f, "%s", chaine );
fwrite ( (void *) Text, 1, buf.st_size, f );
fclose(f);
fprintf ( stderr, "\nREECRITURE OK !!!\n");
}
}
else
fprintf ( stderr, "\nQuelque chose s'est mal passé !!!\n");
if ( Text != NULL )
free(Text);
return EXIT_SUCCESS;
} |
Partager