Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* Liste des headers nécessaires au FileReader.c */
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <fcntl.h>
- #include <unistd.h>
- #include <stdio.h>
- /*
- * Cette fonction permet de retourner 1 si une erreur est rencontrée et 0 sinon.
- */
- int fileReader(char* fileName)
- {
- /* On ouvre en lecture seule le fichier.
- int numberFile = open(fileName, O_RDONLY);
- /* Si la valeur de numberFile est égale à -1,
- le fichier ne peut pas être ouvert. */
- if(numberFile == -1)
- {
- perror("my_cat:open"); // On capture l'erreur système et on l'affiche.
- return 1; // On retourne la valeur 1 pour indiquer une erreur.
- }
- else
- {
- /* On déclare un buffer de 513 caractères
- afin d'éviter un potentiel buffer overflow */
- char buffer[513];
- int size = 0;
- /* Tant que le fichier n'a pas été entièrement lu,
- on reste dans cette boucle. */
- while((size = read(numberFile, buffer, 512)) > 0)
- {
- // On écrit le contenu du buffer dans la sortie standard.
- write(1, buffer, size);
- }
- close(numberFile); // On ferme le fichier qui a été ouvert.
- // On retourne la valeur 0 pour indiquer que tout, c'est bien passé.
- return 0;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement