Заранее скажу что предподователь про ifstream ничего не говорил и это начнется с ооп, а на базе учат всему, но не тому что нужно.
Есть две структуры Company и Contacts, содержат разные поля, записую в файл я их вот так., метод который Записует, в нем же и создаеться сама структура.
void Phonebook::AddCompany()
{
FILE *phoneBook;
fopen_s(&phoneBook, "phoneBook.txt", "a");
if (!phoneBook)
{
printf("error");
exit(1);
}
Company *company = new Company();
if (company)
{
CreateCompany(company);
fprintf(phoneBook, "%s %s %s %s %s\n", company->companyName, company->specialization, company->phoneNumber, company->address->street, company->address->house);
fclose(phoneBook);
СleaningPointersCompany(company);
}
}
void Phonebook::AddContact()
{
FILE *phoneBook;
fopen_s(&phoneBook, "phoneBook.txt", "a");
if (!phoneBook)
{
printf("error");
exit(1);
}
Individual *contact = new Individual();
if (contact)
{
CreateContact(contact);
fprintf(phoneBook, "%s %s %s %s %s\n", contact->name, contact->surname, contact->phoneNumber, contact->address->street, contact->address->house);
fclose(phoneBook);
СleaningPointersContacts(contact);
}
}
С записью проблем нет, получаю файл "phoneBook.txt". Подскажите как считать данные, что бы те данные которые относятся к Contacts не попадали в Company, я так понимаю, что когда идет считывание файла там плевать какой тип, просто набор данных, но вот как считывать ума не приложу. Вообще задание звучит так, 1) что нужно вывести из файла все Компании в консоли, отсортировать и перезаписать, 2) вывести все контакты, отсортировать как то и перезаписать. Самая большая проблема поместить данные правильно в массив для аботы с ним.
"%s %s %s %s %s\n"
Пиши перед ним слово company
или contact
, а когда будешь считывать - проверяй его и создавай соответствующий класс. Да и вообще, запись сомнительная. Если хотя бы 2 поля могут содержать пробелы, ты это не сможешь распарсить. А если одно, то сможешь, но задолбаешься.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Как установить все зависимости для пакета? Пытаюсь установить cpprestsdkВ зависимостях к этому пакету - bzip2, lzma, boost и т
Боюсь, что снова спрошу какую-то очевидную для всех вещь, которая для меня не очевидна: у меня есть функция, которая должна вернуть массив...
Что нужно сделать чтобы исправить эту ошибку? Firebase требует javalang
Мне необходимо получить Root права на андроидЯ знаю что есть много приложений , предназначенных для получения root, но в моем случае мне нужно...