diff --git a/main.c b/main.c index 078f059..802df7c 100644 --- a/main.c +++ b/main.c @@ -9,6 +9,9 @@ void help(char const progName[]); // Ajoute l'extension du fichier compressé au fichier original. char *fichierHuff(const char *fichier); +// Ajoute une extension .txt au fichier décompressé en retirant, s'il existe, l'extension du fichier compressé +char *fichierTXT(const char *fichier); + int main(int argc, char const *argv[]) { /* Morceau de code qui m'a permis de testé `liste.c` @@ -84,7 +87,21 @@ int main(int argc, char const *argv[]) { } if (strcmp(argv[1], "-d") == 0 && argc == 3) { // s'il y a 3 arguments et que l'option `d` est renseigné - printf("Décompression de %s...", argv[1]); + FILE *entree; + if ((entree = fopen(argv[1], "rb")) == NULL) { // ouverture du fichier + gestion erreur + printf("Erreur lors de l'ouverture du fichier.\n"); + return 1; + } + + printf("Décompression de %s...\n", argv[1]); + + // char *nomFichierDecompressee = fichierTXT(argv[1]); + FILE *sortie = fopen("fichier_decompresse", "w"); + decompression(entree, sortie); // décompression du fichier + + fclose(entree); // fermeture du fichier de base + fclose(sortie); // fermeture du nouveau fichier compressé + //free(nomFichierDecompressee); // free du nom car on a utilisé malloc dans `fichierTXT` return 0; } @@ -149,3 +166,7 @@ char *fichierHuff(const char *fichier) { /* peut posé problème lors de la déc return resultat; } + +/* char *fichierTXT(const char *fichier) { + // TODO... +} */