From: Jérôme Benoit Date: Fri, 20 Oct 2017 10:00:15 +0000 (+0200) Subject: Add file parsing code to lexer X-Git-Url: https://git.piment-noir.org/?a=commitdiff_plain;h=96964f3e029ca573f98bff48e932b33367ec5e75;p=TP_AL_C.git Add file parsing code to lexer Signed-off-by: Jérôme Benoit --- diff --git a/lexer/main.c b/lexer/main.c index 8b13789..bb3c6ae 100644 --- a/lexer/main.c +++ b/lexer/main.c @@ -1 +1,36 @@ +#include +#include +#include +FILE *source, *target = NULL; +char c; + +int main (int argc, char const *argv[]) { + + // Ouvre le fichier test.txt en lecture seulement (le fichier doit exister) : + source = fopen("test.txt", "r"); + // Cree et ouvre un fichier target.html en lecture/ecriture + // avec suppression du contenu au prealable : + target = fopen("target.html", "w+"); + + if (source == NULL) { + printf("Impossible d'ouvrir le fichier source\n"); + return -1; + } + + if (target == NULL) { + printf("Impossible d'ouvrir le fichier target\n"); + return -1; + } + + c = fgetc(source); // lecture du caractere suivant du fichier source + while(c != EOF) { // tant que la fin du fichier n'est pas atteinte + fputc(c, target); // ecrire c dans le fichier target + c = fgetc(source); // lecture du caractere suivant du fichier source + } + + if (source != NULL) fclose(source); // fermeture du fichier source + if (target != NULL) fclose(target); // fermeture du fichier target + + return 0; +}