title: 'System.ArgumentOutOfRangeException' occurred in mscorlib.dll
body: <p>I'm writing an application to read the first line of a txt file and write to Excel.</p>
  <p>The input line is like this, which has 94 characters in total, the last 8 can be blanks or 0's (the x's are actually blanks): <code>101x071000301x6759601771308202341F094101ACHxxxxxxxxxxxxxxxxxxxxFISxACHxMILWAUKEE‌​xxxxxxxx</code></p>
  <p>When it prints, it correctly displays the x's as blank. Not sure about the last 8 blanks though.</p>
  <p>The Console.WriteLine correctly outputs the string (which has blank spaces between characters), but when I try to extract the characters from the string I get this error:</p>
  <blockquote>
  <p>'System.ArgumentOutOfRangeException' occurred in mscorlib.dll <br>
  Additional information: Index and length must refer to a location within the string.</p>
  </blockquote>
  <pre><code>while ((input = stream.ReadLine()) != null)
  {
    //ACH HEADER LINE
    if (iCurRecLine == 0 &amp;&amp; input.IndexOf(HeaderBeginKeyWord) &gt;= 0)     
    {
      Console.WriteLine(input);
  
      RepDate = input.Substring(23, 6).Trim();
      RecordTypeCode = input.Substring(0, 1).Trim();
      PriorityCode = input.Substring(1, 2).Trim();
      ImmDestination = input.Substring(3, 10).Trim();
      ImmOrigin = input.Substring(13, 10).Trim();
      FileCreatedDate = input.Substring(23, 6).Trim();
      FileCreatedTime = input.Substring(29, 4).Trim();
      FileIDModifier = input.Substring(33, 1).Trim();
      RecordSize = input.Substring(34, 3).Trim();
      BlockingFactor = input.Substring(37, 2).Trim();
      FormatCode = input.Substring(39, 1).Trim();
      Destination = input.Substring(40, 23).Trim();
      Origin = input.Substring(63, 23).Trim();
      ReferenceCode = input.Substring(86, 8).Trim();
      ...
    }
  }
  </code></pre>
  <p>Where did I go wrong on this?</p>