Как поместить столбцы в файл

У меня есть файл, и я хочу вставить в него данные в виде столбцов:

Размер столбца: 5 пробелов 5 пробелов 12 пробелов

25100 23501 169247103621

Но у меня все еще есть это два условия:

  1. Если строка больше, чем размер столбца, я исключаю нечетное
    длина от строки.
  2. Если строка меньше размера столбца, я заполняю оставшуюся часть
    строка с пробелами.

Ex1:

2510025 23501 169247103621

Становиться:

25100 23501 169247103621

Ex2:

25 23501 169247103621

Становиться:

25    23501 169247103621

Мне удалось получить это в с printf, но теперь я хочу напечатать некоторый формат в файле.

#include <stdio.h>int main(int argc, char **argv)
{
char FMT[] = "%-5.5s %5s %-6.12s\n";
FILE *hFile = NULL;
char *string  = "freeifaddrss";
char *string2 = "cards";
char *string3 = "ifa_nextifa_next";
printf(FMT, string, string2, string3);
return 0;
}

0

Решение

Для записи в файл вы можете перенаправить вывод вашей программы, например:

./prog > out.txt

или откройте файл в программе и напишите в него:

FILE *f = fopen(argv[1], "w");
if (f == NULL) {
perror(argv[1]);
exit(EXIT_FAILURE);
}
...
fprintf(f, FMT, string, string2, string3);

Назовите это с:

./prog out.txt
2

Другие решения

Почему бы тебе не попробовать?

fp = fopen( "output.txt", "w" );
if( fp != NULL )
fprintf( fp, "Hello %s\n", name );
0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector