Как читать информацию, разделенную пробелом, из файла в c ++ - PullRequest
3 голосов
/ 27 марта 2010

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

Ответы [ 2 ]

6 голосов
/ 27 марта 2010
std::ifstream file("filename");
std::vector<int> array;
int number;
while(file >> number) {
    array.push_back(number);
}
5 голосов
/ 28 марта 2010

Просто скопируйте их из потока в массив:

#include <fstream>
#include <vector>
#include <algorithm>
#include <iterator>

int main()
{
    std::ifstream file("filename");
    std::vector<int> array;

    std::copy(  std::istream_iterator<int>(file),
                std::istream_iterator<int>(),
                std::back_inserter(array));
}
...