title: C++ ifstream read only integers
body: <p>I have a txt file with numbers with this format 12345678-A plus some random numbers and text in between. I need to read the file and save only the 8 digit integrers to an array. How do I do it?</p>
  
  <p>Current code I have, works if there are numbers only:</p>
  
  <pre><code>const int MAX = 1000;
  
  ifstream file("file.txt");
  
  int data;
  int index = 0;
  int bigdata[MAX];
  
  while (!file.eof() &amp;&amp; index &lt; MAX)
  {
      file &gt;&gt; data;
      if (data &gt; 20000000 &amp;&amp; data &lt; 90000000)
      {
          bigdata[index] = data;
          index++;
      }
  }
  </code></pre>
  
  <p>Sample of input text:</p>
  
  <pre><code>48251182-D 6,5 6
  49315945-F 7 3
  45647536-I 3,5 3
  45652122-H 7 6,5
  77751157-L 2 2,5
  75106729-S 2 5
  77789857-B 4 3 3,5 3
  59932967-V 4 8,5
  39533235-Q 8 8,5
  45013275-A 5 2
  48053435-Y 6 8
  48015522-N 3,5 4
  48015515-T
  48118362-B 7,5 3,5
  39931759-Q 5,5 3
  39941188-D 3,5 1,5
  39143874-I 3,5 4
  48281181-O 6,5 6
  </code></pre>