Copie de fichier [code en c] [gcc]

Contenu du snippet

Exemple d'un programme de copie de fichier

Source / Exemple :


#include <stdio.h>
#include <string.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
        //declaration des flux
	FILE *fds, *fdd;      
	int value;
	fds = fopen(argv[1], "r");  //ouverture en lecture seule
	fdd = fopen(argv[2], "w");  //ouverture en ecriture
	if(!(fds && fdd))  //si l'ouverture des fichiers echoue, arret du programme
	{
	    exit(0);
	}
	while(!feof(fds))  //tant que je suis pas a la fin du fichier d'entree
	{
	    value = fgetc(fds); //recupere caractere par carectere du fichier d'entree, et rangement dans value
	    if (value == EOF) //Si je suis a la fin du fichier (d'entree) j'arrete le programme
	    {
		exit(0);
	    }
	    value = fputc(value, fdd); //je copie les caractere dans le fichier de sortie
    
	    if(value == EOF) //Si je suis a la fin du fichier de sortie donc c'est une erreur, alors j'arrete le programme en affichant un message d'erreur
	    {
		fprintf(stderr, "\nProbleme d'ecriture\n");
		exit(-1);
	     }
	  }
//J'ai terminer de copier donc je ferme tous les flux
	fclose(fds);
	fclose(fdd);
	return 0;
	
}

Conclusion :


Une foi ce programme compiler, il faut l'executer comme suit:
programme fichier_originale.txt copie_du_fichier.txt

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.