Как удалить пустые параграфы из txt? - C (СИ)

Узнай цену своей работы

Формулировка задачи:

есть txt : 1111111111 5555555555555555555555 00000000 3333333 222222 444444444 ////////////////////////////////////////////////// Как убрать эти параграфы? чтоб получилось так : 1111111111 5555555555555555555555 00000000 3333333 222222 444444444 /////////////////////////////////////////////

Решение задачи: «Как удалить пустые параграфы из txt?»

textual
Листинг программы
#include <stdio.h>
#include <locale.h>
#include <ctype.h>
 
int is_blank(const char* s) {
    while(*s) {
        if (0 == isspace(*s))
            return 0;
        ++s;
    }
    return 1;
}
enum constants {
    LINE_SZ = 1024
};
int main(int argc, char **argv) {
    FILE *in, *out;
    char line[LINE_SZ];
 
    setlocale(LC_ALL, "");
 
    if(NULL == (in  = fopen("input.txt" , "r")))
        return 1;
    if(NULL == (out = fopen("output.txt", "w")))
        return 1;
    while (0 == feof(in)) {
        if (NULL == fgets(line, LINE_SZ, in))
            break;
        if (0 == is_blank(line))
            fputs(line, out);
    }
    fclose(in);
    fclose(out);
    return 0;
}

Объяснение кода листинга программы

  1. удаление пустых параграфов из txt
  2. проверка на пустой параграф: функция is_blank, которая проверяет, является ли строка пустым параграфом (возвращает 0, если есть хотя бы один не пробельный символ, и 1, если все символы пробельные)
  3. константы: LINE_SZ — размер строки в символах (1024)
  4. открытие файлов: ввод из input.txt, вывод в output.txt (если файлы не открываются, программа завершается с возвратом 1)
  5. цикл чтения: пока не достигнут конец файла (feof(in) == 0), программа читает строку из файла (если строка не читается, программа завершается и переходит к следующей итерации цикла)
  6. проверка на пустой параграф: если строка не является пустым параграфом (is_blank(line) == 0), программа записывает ее в выходной файл
  7. закрытие файлов: после окончания чтения программа закрывает входной и выходной файлы
  8. возврат 0: программа успешно выполнена

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 3.909 из 5