diff --git a/src/io.c b/src/io.c index aa8f9c73..d06af9af 100644 --- a/src/io.c +++ b/src/io.c @@ -78,6 +78,12 @@ int Read_bytes(FILE *file, void *dest, size_t size) { return fread(dest, 1, size, file) == size; } +// Read a line +// returns -1 if OK, 0 in case of error +int Read_byte_line(FILE *file, char *line, size_t size) +{ + return fgets(line, size, file) != NULL; +} // Ecrit des octets // Renvoie -1 si OK, 0 en cas d'erreur int Write_bytes(FILE *file, void *src, size_t size) @@ -727,4 +733,4 @@ int Remove_directory(const char * path) #else return rmdir(path); #endif -} \ No newline at end of file +} diff --git a/src/io.h b/src/io.h index 9475adf5..e4b959bb 100644 --- a/src/io.h +++ b/src/io.h @@ -44,6 +44,8 @@ int Write_byte(FILE *file, byte b); /// Reads several bytes from an open file. Returns true if OK, false if a file i/o error occurred. int Read_bytes(FILE *file, void *dest, size_t size); +// Read a line from an open file. Returns true if OK, false in case of error +int Read_byte_line(FILE *file, char *line, size_t size); /// Writes several bytes to an open file. Returns true if OK, false if a file i/o error occurred. int Write_bytes(FILE *file, void *dest, size_t size);