У меня есть файл с более чем 100 шт. элементов (данные того же типа, например, целые). Каждый элемент находится в другой строке.
Структура файла:
int
int
...
int
Я должен прочитать эти данные в 2D массив (вектор из 5 векторов):
- от первой строки к первому вектору
- от второй строки ко второму вектору
....
- с пятой строки на пятый вектор
- шестая строка первого вектора ...
и от начала до конца файла.
std::vector<std::vector<int>> my_v;
std::ifstream in( "data.txt" );
std::string record;
while ( std::getline( in, record ) )
{
std::istringstream is( record );
std::vector<int> row( ( std::istream_iterator<int>( is ) ),
std::istream_iterator<int>() );
my_v.push_back( row );
}
for ( const auto &row : my_v )
{
for ( double x : row ) std::cout << x << ' ';
std::cout << std::endl;
}
Теперь я читаю данные в один вектор. Как это исправить?