Не читаются все данные из файла
Не знаю как записать имя и фамилию в разные поля класса, типа string. Читаю из бинарного файла.
На данный момент записывает только первое, а именно имя (т.к. в буфер читается из файла только одно имя, фамилия в сам буфер buf - не приходит).
#include <fstream>
using namespace std;
class reader_info {
public:
void print_readers() {
cout << name <<"\t"<< surname << endl;
}
void out_all_readers() {
ifstream file;
file.open("data_base.txt");
reader_info reader;
if (file.is_open()) {
system("cls");
size_t len = 0;
while (file.read((char*)&len, sizeof(len))) {
char* buf = new char[len]; // Выделение буфера для чтения
file.read(buf, len);
delete[]buf;
reader.print_readers();
}
}else cout << "[ERROR] Не могу открыть файл!" << endl;
file.close();
}
private:
string name = "",
surname = "",
books = "";
int book_count = 0;
};