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

Построчное считывание из файла - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.92
ok40
0 / 0 / 0
Регистрация: 19.11.2012
Сообщений: 25
19.03.2013, 16:43     Построчное считывание из файла #1
Всем привет!

Функция, которая считывает из файла значения и помещает их в массив. Проблема в том, что даже из файла не читает :-( Считывает только первое значение и всё. Данные в файле организованы следующим образом:
0.44564654564,5.3363636456456
4.35345354345,3.3434345345345
и т.д.
Вот кусок этой функции:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void LoadTables (double **tab, char *file_name, int size)
{
    int i;
    ifstream file_in(file_name);
    for(i=0; !file_in.eof(); i++)
    {
            char str1_file[25];
            char str2_file[25];
                file_in.getline(str1_file,25,',');
                file_in.getline(str2_file,25);
            tab[i][0]=atof(str1_file);  
        tab[i][1]=atof(str2_file); 
                cout<<tab[i][0]<<"  "<<tab[i][1]<<endl;
    }
    file_in.close(); 
}
Заранее спасибо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.03.2013, 16:43     Построчное считывание из файла
Посмотрите здесь:

Построчное чтение из файла C++
C++ Построчное чтение из файла!
Построчное считывание текста C++
C++ построчное чтение из файла
построчное считывание из файла C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Tsin
 Аватар для Tsin
419 / 395 / 108
Регистрация: 30.12.2012
Сообщений: 1,086
Записей в блоге: 2
Завершенные тесты: 3
19.03.2013, 16:48     Построчное считывание из файла #2
ok40, не используй цикл for, делай проще)
C++
1
2
3
while(!file_in.eof())
{
}
а считывать попробуй так (вроде..)

C++
1
2
3
4
//Заведи стринг, в который будешь читать
string line;
//И читай так
getline(fie_in, line);
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
19.03.2013, 17:13     Построчное считывание из файла #3
У меня это код работает...
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
19.03.2013, 17:23     Построчное считывание из файла #4
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
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <iomanip>
using namespace std;
 
void LoadTables (double **tab, char *file_name, int size)
{
    int i;
    ifstream file_in(file_name);
    for(i=0; !file_in.eof(); i++)
    {
            char str1_file[25];
            char str2_file[25];
            
            file_in.getline(str1_file, 25, ',');
            file_in.getline(str2_file, 25);
            
            tab[i][0] = atof(str1_file);  
            tab[i][1] = atof(str2_file); 
            
            cout.precision(12);
            cout << tab[i][0] << "  " << tab[i][1] << endl;
    }
    file_in.close(); 
}
 
int main()
{
   double **tab = new double*[10];
   for (int i = 0; i < 10; ++i)
        tab[i] = new double[2];
    
    LoadTables (tab, "2.txt", 10);
 
    for (int i = 0; i < 10; ++i)
        delete [] tab[i];
    delete [] tab;
    
    system("pause");
    return 0;
}
Миниатюры
Построчное считывание из файла  
ok40
0 / 0 / 0
Регистрация: 19.11.2012
Сообщений: 25
19.03.2013, 22:39  [ТС]     Построчное считывание из файла #5
Спасибо всем большое за помощь! Сама ступила :-) вызывала эту функцию для трёх файлов, в одном из которых были данные разделялись не запятыми, а пробелами ) теперь всё ок! еще раз спасибо!
Yandex
Объявления
19.03.2013, 22:39     Построчное считывание из файла
Ответ Создать тему
Опции темы

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