Форум программистов, компьютерный форум CyberForum.ru

Заполнение массива структур из файла - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.80
SANE49
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 5
31.03.2012, 15:54     Заполнение массива структур из файла #1
Здравствуйте появилась проблема - никак не могу найти, как заполнить массив структур из файла. Как заполнить файл я разобрался, а наоборот не получается.
Вот пример как я заполнял файл :
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
#include<iostream>
#include <fstream>
#include <stdio.h>
using namespace std;
 
struct Magazin
{
    char nomer[10]; 
    char nazvanie[10]; 
    char fioder[15]; 
    int nsotr[5];
    int gdoh;
}
int main ()
{
  setlocale(LC_ALL,"Russian_Russia.1251");
  Magazin st[50];
  int v, n, i;
  cout << "Введите количество магазинов: ";
  cin >> n;
  for (i = 0; i < n; i ++)
  {
    cout << endl << "Магазин " << i+1 << ":\n";
    cout << "Введите номер: ";
    cin >> st[i].nomer;
    cout << endl <<"Введите название магазина: ";
    cin >> st[i].nazvanie;
    cout << "Введите ФИО Директора: ";      
    cin >> st[i].fioder;
    cout << "Введите количество сотрудников ";
    cin >> st[i].nsotr[i];
    cout << "Введите годовой доход: ";
    cin >> st[i].gdoh;
   }
  ofstream file;
  file.open("C:\\magazin.txt");
  do
  {
        for (i = 0; i < n; ++i)
        {
        file << st[i].nomer<<"\t" <<st[i].nazvanie<<"\t"<< st[i].fioder <<"\t"<< st[i].nsotr[i] <<"\t"<< st[i].gdoh << endl;
        }
        break;
  }
  while (v != 3);
  file.close();
 }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.03.2012, 15:54     Заполнение массива структур из файла
Посмотрите здесь:

заполнение массива структур, методы cin-а C++
C++ Заполнение и сохранение массива структур не работает...
C++ Заполнение массива структур с консоли
заполнение массива структур из файла и вывод на экран/в файл C++
Заполнение массива структур оператором for C++
Заполнение массива структур из файла C++
Ошибка считывания из файла динамического массива структур C++
C++ Чтение массива структур из бинарного файла

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Avazart
 Аватар для Avazart
6901 / 5141 / 252
Регистрация: 10.12.2010
Сообщений: 22,602
Записей в блоге: 17
31.03.2012, 16:47     Заполнение массива структур из файла #2
C++
1
while (v != 3);
Что такое v не понятно....

Добавлено через 5 минут
Поидее так
C++
1
2
3
4
5
ifstream file("C:\\magazin.txt");
for (i = 0; !file.eof(); ++i)
        {
        file  >> st[i].nomer >> st[i].nazvanie >> st[i].fioder >> st[i].nsotr[i] >> st[i].gdohl;
        }
SANE49
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 5
31.03.2012, 16:47  [ТС]     Заполнение массива структур из файла #3
извиняюсь я там цикл do while забыл убрать.Вот так:

C++
1
2
3
4
5
6
7
*** 
 file.open("C:\\magazin.txt");
        for (i = 0; i < n; ++i)
        {
        file << st[i].nomer<<"\t" <<st[i].nazvanie<<"\t"<< st[i].fioder <<"\t"<< st[i].nsotr[i] <<"\t"<< st[i].gdoh << endl;
        }
***
Yandex
Объявления
31.03.2012, 16:47     Заполнение массива структур из файла
Ответ Создать тему
Опции темы

Текущее время: 20:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru