Запись данных в файл в одну строку - C (СИ)

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

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

Подскажите, пожалуйста, при записывании в файл трех параметров(название книги, автор и год) через FILE* данные записываются очень далеко друг от друга в одну колонку(около 100 пустых строк между ними) Возможно ли сделать так, чтобы данные записывались в строку (назв, автор, год) а следующие данные записывались ниже?
FILE* fp = fopen ("text.txt", "w");
fwrite(&books[0], sizeof(tag_book), 1,fp);
fclose(fp);
for (int j=1; j< N; j++)
{
fp = fopen ("text.txt", "a");
fwrite(&books[j], sizeof(tag_book), 1,fp);
fclose(fp);
}

Решение задачи: «Запись данных в файл в одну строку»

textual
Листинг программы
for (int j=1; j< N; j++)
{
fp = fopen ("carsmy.txt", "ab");
fwrite(&autos[j], sizeof(autos), 1,fp);
fclose(fp);
}

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

  1. Создается файл carsmy.txt или открывается уже существующий файл с таким названием в режиме добавления (ab).
  2. В цикле происходит запись данных из массива autos в файл carsmy.txt.
  3. Каждый элемент массива autos записывается в файл целиком, начиная с первого байта и заканчивая последним байтом, потому что функция fwrite записывает данные в файл, как они есть, без изменений.
  4. После записи данных в файл, файл закрывается.
  5. Цикл повторяется для каждого элемента массива autos, начиная со второго и заканчивая N-ым.

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


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

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

10   голосов , оценка 3.9 из 5
Похожие ответы