diff options
Diffstat (limited to 'rushs/evalexpr/io_replace_line/replace_line.c')
| -rw-r--r-- | rushs/evalexpr/io_replace_line/replace_line.c | 50 |
1 files changed, 0 insertions, 50 deletions
diff --git a/rushs/evalexpr/io_replace_line/replace_line.c b/rushs/evalexpr/io_replace_line/replace_line.c deleted file mode 100644 index 7fd0e2a..0000000 --- a/rushs/evalexpr/io_replace_line/replace_line.c +++ /dev/null @@ -1,50 +0,0 @@ -#define _POSIX_C_SOURCE 200809L - -#include <stdio.h> -#include <stdlib.h> - -int replace_line(const char *file_in, const char *file_out, const char *content, - int n) -{ - FILE *a = fopen(file_out, "w"); - if (a == NULL) - { - return -1; - } - FILE *r = fopen(file_in, "r"); - if (r == NULL) - { - return -1; - } - - char *buf = NULL; - ssize_t e; - int l = 0; - size_t count = 0; - while ((e = getline(&buf, &count, r)) != 0 && e != -1) - { - if (l == n) - { - if (fputs(content, a) == EOF) - { - free(buf); - return -1; - } - } - else - { - if (fputs(buf, a) == EOF) - { - free(buf); - return -1; - } - } - l++; - } - - fclose(a); - fclose(r); - free(buf); - - return 0; -} |
