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

Считывание из файла чисел, разделенных пробелом, в массив - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
inham130
0 / 0 / 0
Регистрация: 23.11.2011
Сообщений: 35
24.03.2014, 22:09     Считывание из файла чисел, разделенных пробелом, в массив #1
В текстовом файле массив целых чисел записанных через пробел. Затем переход на новую строку и еще один массив через пробел. Пытаюсь считать эти 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
char ch[3], l = 'a';
            int i = 0, j = 0, a=0, b = 0;
            ifstream f;
            f.open("D://2d.txt", fstream::in);
 
            if(f)
            {           
                while (l != '\n')
                {
                    f >> l;
                    if(isdigit(l))
                    {
                        ch[j] = l;
                        j++;
                        if(j == 3)
                        {
                            j = 0;
                            x[i] = atoi(ch);
                            i++;
                        }
                    }
                }
                i = 0;
                while (!f.eof())
                {
                    f >> l;
                    if(isdigit(l))
                    {
                        ch[j] = l;
                        j++;
                        if(j == 3)
                        {
                            j = 0;
                            y[i] = atoi(ch);
                            i++;
                        }
                    }
                }
                f.close();
                int n = i;
            }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.03.2014, 22:09     Считывание из файла чисел, разделенных пробелом, в массив
Посмотрите здесь:

Считывание чисел из файла и запись их в массив C++
C++ пытаюсь сделать реализацию через считывание из файла кол-ва чисел, i,но незнаю как сделать реализацию из файла в массив и сортировки.
В строке, содержащей несколько слов, разделенных пробелом, переставить слова в обратной последовательности C++
C++ Считывание чисел из файла в массив
Подсчет колличества слов разделенных пробелом и пробелов в файле C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
24.03.2014, 22:57     Считывание из файла чисел, разделенных пробелом, в массив #2
C++
1
2
3
4
    while (l != '\n')
    {
        f >> l;
        ...
При таком чтении '\n' никогда не считается (оператор >> пропускает пробельные символы).

Добавлено через 2 минуты
Можно так:
C++
1
while (f.peek() != '\n')
Vourhey
Почетный модератор
6469 / 2244 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
24.03.2014, 23:33     Считывание из файла чисел, разделенных пробелом, в массив #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <algorithm>
#include <fstream>
#include <string>
#include <sstream>
#include <iterator>
 
int main()
{
    std::ifstream in("input");
    std::string line;
    std::vector< std::vector<int> > arrays;
    std::istringstream str;
    while(std::getline(in, line))
    {
        str.str(line), str.clear();
        arrays.push_back(std::vector<int>{});
        std::copy(std::istream_iterator<int>(str), std::istream_iterator<int>(), std::back_inserter(arrays.back()));
    }
    in.close();
    return 0;
}
nobless1368
 Аватар для nobless1368
14 / 14 / 1
Регистрация: 04.06.2012
Сообщений: 124
Записей в блоге: 1
11.06.2015, 15:37     Считывание из файла чисел, разделенных пробелом, в массив #4
а как потом сделать вывод в cout? и я не очень понимаю, зачем здесь итератор
daslex
11.06.2015, 16:07     Считывание из файла чисел, разделенных пробелом, в массив
  #5

Не по теме:

трехзначные положительные?



Не по теме:

и вообще какой массив должен получиться?
массив из двух строк или массив из двух массивов, которые хранят эти числа.

Yandex
Объявления
11.06.2015, 16:07     Считывание из файла чисел, разделенных пробелом, в массив
Ответ Создать тему
Опции темы

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