Чтение чисел из файла, который включает форматирование, отличное от чисел - PullRequest
0 голосов
/ 16 октября 2018

Мой код работает для этого файла (numbers.txt)

1 2 3 4 5 6 7 8 9 10. Однако он не работает для этой версии файла

{{1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}, {9}, {10}}.

Как мне поступитьоб использовании ifstream, чтобы брать только цифры, а не скобки или запятые?Какой-то цикл для разграничения?Я прошу прощения, если это тривиально, я возвращаюсь к кодированию после довольно долгого перерыва.

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

int main()
{
  std::ifstream is("numbers.txt");
  std::istream_iterator<double> start(is), end;
  std::vector<double> numbers(start, end);
  std::cout << "Read " << numbers.size() << " numbers" << std::endl;

  // print the numbers to stdout
  std::cout << "numbers read in:\n";
  std::copy(numbers.begin(), numbers.end(),
        std::ostream_iterator<double>(std::cout, " "));
  std::cout << std::endl;

}
...