More efficient version, then getline + stringstream:
vector<vector<int> > numbers;
int num;
for (;;) {
if (file.peek() == '\n') {
numbers.resize(numbers.size() + 1);
} else if (!isspace(file.peek())) {
if (!(file >> num)) break;
numbers.back().push_back(num);
continue;
}
file.get();
}
source
share