Aller au contenu

#02 - Copier le contenu d'un fichier

Énoncé

Écrire un programme qui demande à l'utilisateur de saisir le nom d'un fichier et qui copie le contenu du fichier dans nouveau fichier copie.txt. Si le nom saisi ne correspond à aucun fichier, le programme doit afficher l'indiquer Le fichier XXX n'existe pas.

Solution

#include <stdio.h>

// Exercice 5
void main(){
    char ch, nom[50];
    FILE *file1, *file2;

    printf("Veuillez entrer le nom du fichier: ");
    scanf("%s", nom);

    // ouverture du fichier
    file1 = fopen(nom, "r");

    if (file1) { // le fichier a été bien ouvert
        file2 = fopen("copie.txt", "w");
        // Lire le contenu du fichier
        while((ch = getc(file1)) != EOF){
            putc(ch, file2);
        }
        printf("Fichier copier\n");
        fclose(file2);
    }
    else{ // l'ouverture a échoué
        printf("Le fichier %s n'existe pas\n", nom);
    }

    fclose(file1);
}