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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
undestroyer
0 / 0 / 0
Регистрация: 24.03.2013
Сообщений: 53
#1

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

30.05.2013, 18:16. Просмотров 542. Ответов 1
Метки нет (Все метки)

Здравствуйте, посоветуйте как лучше сделать чтение из файла в массив структур с разными типами данных.
Входной файл (все денные введены через знак табуляции):
toyota 130 250 1500 sedan 2200 1800
audi 220 250 1500 hetch 2000 2500
bmv m3 250 320 1700 sedan 2800 3200
ferrari 450 375 1200 coupe 3500 8500
Каждую строчку надо внести в массив структур:
C++
1
2
3
4
5
6
7
8
9
10
struct car
{
    char name[10];//имя
    int hp;//мощность
    int speed;//макс скорость
    int massa;//масса
    char kuzov[10];//тип кузова
    int roc; //рабочий объем цилиндра
    int price;//цена
};
как лучше считать все строки и занести соответствующие данные в массив структур? для file.getline нужно чтоб в структурах были только символьные переменные, в fscanf я не знаю как указывать размер для символьных переменных (они разные). Что посоветуете?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.05.2013, 18:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Форматированное чтение из файла в массив структур (C++):

Форматированное чтение из файла - C++
Пишу телефонный справочник нужно из одной строки вытаскивать номер фио и адресс чёт не выходит ничего(( #include <iostream.h> ...

Чтение из текстового файла массив структур - C++
Доброго времени суток. Нужно из текстового файла заполненного по типу ( Фио Диагноз числопоступления пол ) занести информацию в бинарный...

Чтение из файла в массив структур (ошибка со string) - C++
Есть задача: считать из файла информацию в массив структур. Файл: Иван Иванов Иванович 18 1 2 8.6 Петр Петров Петрович 17 1 3...

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

Чтение структур с файла - C++
Я записал структуру в файл! В файле лежит структура троих студентов. Как мне вывести из файла данные например для второго студента? Читал...

Чтение структур из файла - C++
Добрый день. Такой вопрос: есть структура, эту структуру заполнили с клавиатуры и записали в файл. Затем нужно работать с этим файлом, я не...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
ksandro
31 / 31 / 1
Регистрация: 15.04.2011
Сообщений: 81
30.05.2013, 19:48 #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
#include <fstream>
#include <iostream>
 
struct car
{
    char name[10];//имя
    int hp;//мощность
    int speed;//макс скорость
    int massa;//масса
    char kuzov[10];//тип кузова
    int roc; //рабочий объем цилиндра
    int price;//цена
};
 
int main()
{
        std::ifstream f("file.txt");
        int size = 0;
        car cars[100];
        for(int i = 0;  i < sizeof(cars); ++i)
        {
                f >> cars[i].name;
                if(f.eof())
                {
                        size = i;
                        break;
                }
                f >> cars[i].hp >> cars[i].speed >> cars[i].massa >> cars[i].kuzov >> cars[i].roc >> cars[i].price;
        }
 
        for(int i =0; i < size; ++i)
        {
                std::cout << cars[i].name << " "
                          << cars[i].hp << " "
                          << cars[i].speed << " "
                          << cars[i].massa << " "
                          << cars[i].kuzov << " "
                          << cars[i].roc << " "
                          << cars[i].price << "\n";
        }
}
Вот примерно так можно. Вроде работает, только "bmv m3" воспринимается как 2 поля, если заменить на "bmv_m3" то все ок.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.05.2013, 19:48
Привет! Вот еще темы с ответами:

Чтение вектора структур из файла - C++
struct TRANSACTIONS { unsigned long long sender; unsigned long long receiver; unsigned long long amount; } ... ...

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

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

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


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru