Я сейчас в классе структур данных C++, и я чрезвычайно новичок в C++. Моя цель здесь - прочитать строки из файла и сохранить их в структуре. Линии содержат элементы книги. Моя проблема в том, что некоторые строки имеют пробелы, и я не уверен, как правильно их читать в структуру. Я не могу правильно использовать getline()
, чтобы читать строки в каждом элементе структуры. Если я запустил его как есть, я получаю сообщение error: expected primary expression before 'infile'
. Извините, если этот пост не отформатирован правильно, это также мой первый пост переполнения стека! Любая помощь??Использование getline() для чтения ввода (с пробелами) из файла в структуру
Это то, что моя структура выглядит следующим образом:
typedef struct book {
char title[100];
char author[100];
char publisher[100];
float price;
char isbn[100];
int pages;
int copies;
} Book;
И это, как я пытаюсь читать строки в структуру:
for (int i=0; i < currentIndex; i++) {
getline(ifstream infile, my_book[i].title);
getline(ifstream infile, my_book[i].author);
getline(ifstream infile, my_book[i].publisher);
getline(ifstream infile, my_book[i].price);
getline(ifstream infile, my_book[i].isbn);
getline(ifstream infile, my_book[i].pages);
getline(ifstream infile, my_book[i].copies);
currentIndex++;
}
Текстовый файл будет книга сведения, перечисленные в качестве таковых :
Magician: Apprentice
Raymond E. Feist
Spectra (January 1, 1994)
5.02
0553564943
512
1
Удалить слово 'ifstream' Infront из' infile'. – kfsone
Это плохая практика. писать структуры в файл и читать структуру из файлов. – Raindrop7
@ Raindrop7 Кто говорит так, и почему на самом деле? Не могли бы вы рассказать об этом, пожалуйста? –