С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 09.06.2021
Сообщений: 4
1

Чтение массива структур из файла

09.06.2021, 06:15. Показов 599. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Я пишу программу которая будет сохранять введённые данные в файл, а затем выводить на экран. Нужно прочитать первые 2 строки и записать их в переменные. Все остальные строки прочитать, и записать в массив структур.
Код:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
void OutputInaArray(Data* (&_Data), Lessons* (&_Less), int& d, int& l)
{
    
    ifstream reading("Information.txt");
    
    if (reading)
    {
        int a = 1;
 
        reading >> d;
        while (!reading.eof())
        {
            if (a == 2)
            {
                reading >> l;
                break;
            }
            ++a;
        }
 
        _Data = new Data[d];
        _Less = new Lessons[l];
        string s;
        while (reading)
        {
            for (int i = 0; i < d; i++)
            {
                _Data = new Data[d];
                reading >> _Data[i].Stud.FIO;
                reading >> _Data[i].Stud.Old;
                reading >> _Data[i].Inst.Institute_Name;
                reading >> _Data[i].Inst.Kampus_name;
                reading >> _Data[i].Inst.Kurse_num;
                reading >> _Data[i].Inst.direction_name;
                reading >> _Data[i].Inst.group_name;
                reading >> _Data[i].Inst.Num_in_group;
                for (int j = 0; j < l; j++)
                {
 
                    reading >> _Data[i].Less[j].Lessons_name;
 
                    reading >> _Data[i].Less[j].Rating_Num;
                }
            }
        }
        }
    reading.close();
}
Очень нужна ваша помощь.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.06.2021, 06:15
Ответы с готовыми решениями:

Чтение массива структур из файла
Здравствуйте! Для данной программы, нужно реализовать чтение массива структур из файла. При...

Чтение из файла массива структур
/* 4. Дана информация о семи студентах. Структура имеет вид: фамилия, имя, отчество и 4 оценки...

Чтение массива структур из файла
есть структура typedef struct { unsigned short codeContribution; unsigned short...

Чтение массива структур из бинарного файла
Доброго времени суток.Возникла проблема с чтением структур из бинарного файла.Файл открывает,но при...

3
Модератор
Эксперт С++
13720 / 10917 / 6478
Регистрация: 18.12.2011
Сообщений: 29,146
09.06.2021, 07:56 2
Мне кажется, должно быть так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
bool OutputInaArray(Data* (&_Data), /*Lessons* (&_Less),*/ int& d, int& l)
{
    ifstream reading("Information.txt");
    if (reading)
    {
        reading >> d;
        reading >> l;
        _Data = new Data[d];
        for (int i = 0; i < d; i++)
        {
            reading >> _Data[i].Stud.FIO;
            reading >> _Data[i].Stud.Old;
            reading >> _Data[i].Inst.Institute_Name;
            reading >> _Data[i].Inst.Kampus_name;
            reading >> _Data[i].Inst.Kurse_num;
            reading >> _Data[i].Inst.direction_name;
            reading >> _Data[i].Inst.group_name;
            reading >> _Data[i].Inst.Num_in_group;
 
            _Data[i].Less = new Lessons[l];
            for (int j = 0; j < l; j++)
            {
                reading >> _Data[i].Less[j].Lessons_name;
                reading >> _Data[i].Less[j].Rating_Num;
            }
            if(!readind)return false; // на всякий случай, вдруг файл битый.
        }
        reading.close();
        return true;
    }
    return false;
}
0
0 / 0 / 0
Регистрация: 09.06.2021
Сообщений: 4
09.06.2021, 20:00  [ТС] 3
Тогда у меня не получится считать строку из файла. ФИО написано в одну строку и название предмета может содержать в себе несколько слов.
0
Yetty
10.06.2021, 01:34     Чтение массива структур из файла
  #4

Не по теме:

MALAMN, напишите оригинал условия задачи

0
10.06.2021, 01:34
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.06.2021, 01:34
Помогаю со студенческими работами здесь

Чтение из двоичного файла в массива структур
У меня есть класса user со структурой info class user { public: struct info {...

Запись и чтение массива структур с файла
Есть массив структур struct X { char BB; int AA; }; Как записать этот массив в фаил и...

Чтение массива структур из бинарного файла
при выводе дает какую-то кашу из символов переписываю структуру из одного файла в 10. это...

Чтение массива структур из текстового файла
Привет! Есть такая структура: struct Countries::Country { char name; int brand; }; и файл...

Чтение ассоциативного массива структур из бинарного файла
как правильно считывать ассоциативный массив из бинарного файла? std::ofstream write;...

Чтение нескольких структур и одной переменной из бинарного файла. Формат файла имеется
Формат файла состоит из 3 структур и одной переменной. Подробное описание формата во вложении,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru