title: Output text file is not giving me underscore symbol
body: <p>I am reading a text file and making some alignment changes, also removing the space in 3rd column of text file and replacing it with underscore (_) symbol.  <strong>But unfortunately.. when my output generated i can see the underscore symbol is not coming for no reason</strong>. Can ANYONE help me please, why its happening like that??</p>
  
  <p>code snippet:</p>
  
  <pre><code> public void just_create_text()
      {
          //Here we are exporting header
          string[] strLines = System.IO.File.ReadAllLines(textBox1.Text);
          string CarouselName = enter.Text;
          int[] cols = new int[] { 15, 15, 25, 15, 15 };
          StringBuilder sb = new StringBuilder();
          string line = RemoveWhiteSpace(strLines[0]).Trim();
          string[] cells = line.Replace("\"", "").Split('\t');
  
          for (int c = 0; c &lt; cells.Length; c++)
              sb.Append(cells[c].Replace(" ", "_").PadRight(cols[c])); 
           // here i am replacing the space with underscore...
  
          sb.Append("Location".PadRight(15));
          sb.Append("\r\n");
  
          int tmpCarousel = 0;
          int carouselNumber = 0;
          Dictionary&lt;string, int&gt; namesForCarousels = new Dictionary&lt;string, int&gt;();
          for (int i = 0; i &lt; textfile.Count; i++)
          {
  
  
              for (int c = 0; c &lt; cells.Length; c++)
                  sb.Append(textfile[i].Cells[c].PadRight(cols[c]));
  
              string name = textfile[i].Cells[1];
  
              if (namesForCarousels.TryGetValue(name, out tmpCarousel) == false)
              {
                  carouselNumber++;
                  namesForCarousels[name] = carouselNumber;
              }
              var strCorousel = lstMX.Find(x =&gt; x.MAX_PN.Equals(name)).Carousel;
              strCorousel = (String.IsNullOrEmpty(strCorousel)) ? CarouselName : strCorousel;
              sb.Append(String.Format("{0}:{1}", strCorousel, carouselNumber).PadRight(15));
  
              sb.Append("\r\n");
          }
          System.IO.File.WriteAllText(@"D:\output.TXT", sb.ToString());
      }
  
  private string RemoveWhiteSpace(string str)
      {
          str = str.Replace("  ", " ");
          if (str.Contains("  "))
              str = RemoveWhiteSpace(str);
          return str;
      }
  </code></pre>
  
  <p>Input text file:</p>
  
  <pre><code>Designator  MAX PN  Footprint   Center-X(mm)    Center-Y(mm)
  
  "AC1"   "100-0177"  "CAPC1608N" "7.239" "82.677"
  "AC2"   "100-0177"  "CAPC1608N" "4.445" "85.471"
   "C1"   "100-0211"  "0805M - CAPACITOR" "14.745"    "45.72"
   "C2"   "100-0230"  "CAPC3225N" "83.388"    "58.42"
   "C3"   "100-0145"  "CAPC1608N" "101.543"   "73.025"
   "C10"  "100-0145"  "CAPC1608N" "109.163"   "73.025"
  </code></pre>
  
  <p>In output text file i need like below if we take the case for C1:</p>
  
  <pre><code> C1  100-0211    0805M_-_CAPACITOR   14.745     45.72   Location:3
    //here only problem is i am not getting the underscore in 0805M - CAPACITOR.
     //i am getting as same.. like 0805M - CAPACITOR
  </code></pre>