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

считывание файла - C++

Восстановить пароль Регистрация
 
Speli
0 / 0 / 0
Регистрация: 06.03.2013
Сообщений: 30
31.05.2013, 15:00     считывание файла #1
Здравствуйте, нужно считывать файл с некоторыми данными для дальнейшей работы с ними, для этого его нужно загнать в переменную (структура variable) которая в свою очередь должна иметь пределенную струтурку, как у файла, т.е. в одних колонках вещественные числа в других натуральные, где символы...ну как то так... эта стуктура описывается с помощью структуры table тоесть она как бы является описанием того как должна выглядеть таблица
вот эти две структуры
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
struct cell
{
    unsigned row;
    unsigned column;
    void *data;
    unsigned type;
    table *next;
};
 
struct variable
{
    table *data;
    unsigned rows;
    unsigned columns;
    char *name;
};
Точнее обьяснить что то немогу, вроде понимаю а обьяснить немогу, ну может кто возмется помочь)

пример файла приложен
Вложения
Тип файла: txt PR270312.txt (2.9 Кб, 10 просмотров)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Speli
0 / 0 / 0
Регистрация: 06.03.2013
Сообщений: 30
01.06.2013, 10:37  [ТС]     считывание файла #2
Ну может, хоть, кто подскажет как из такого файла значения считать, не getline'ом а именно позначениям в массив
Хулиган
 Аватар для Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
01.06.2013, 13:15     считывание файла #3
C++
1
2
3
4
5
6
7
ifstream in("имяфайла");
 
while(!in.eof())
{
         in>>...>>...>>...; cчитываете, что надо
         v.push_back(...); сохр в вектор или в массив
}
думаю как то так
Speli
0 / 0 / 0
Регистрация: 06.03.2013
Сообщений: 30
04.06.2013, 14:02  [ТС]     считывание файла #4
Ребята, помогите кто нибудь, вообще разобраться не могу
C++
1
2
3
4
5
6
7
8
struct table
{
    unsigned row;
    unsigned column;
    void *data;
    unsigned type;
    table *next;
};
каждое значение в файле должно быть вот такой вот структурой (файл в первом сообщении) в data должно ханится само значение, next указатель на предыдущий элемент, type - нужно указывать тип значения, там может присутствовать как и int, double и так далее, то есть тип нужно указывать при считывании значения. В row column должны хранится индексы ячейки в матрице.

C++
1
2
3
4
5
6
7
struct variable
{
    table *data;
    unsigned rows;
    unsigned columns;
    char *name;
};
а этой структуой описывается массив (двумерный) структур выше указанных.
То есть table это у меня каждое значение из файла, а variable это массив этих значений.
Вот как это реализовать?

Могу только каждое значение как строку считывать, но как строку не подходит
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
table t1[50];
char g[200];
f=fopen ("D:\\Visual Studio 2010\\2.txt","rt");
for (i=0; i<10; i++)
        {
            
        
            fscanf(f,"%s",&g); 
            t1[i].data= &g;
            t1[i].type =1;
            k++;
            printf("%s ",t1[i].data);
            t1[i].next=&t1[i-1];
            if (i==0 && j==0)
                t1[i].next=NULL;
            if(k==10)
                {cout<<endl;
            k=0;
            
                
            }
        }
И я их считываю и вывожу в одном цикле, после выхода из цикла ханится только последнее значение, не опериовать ими не вывести уже нельзя.
Yandex
Объявления
04.06.2013, 14:02     считывание файла
Ответ Создать тему
Опции темы

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