Read Text file and Email in Plain Text without affecting the original Text
<p>I have a plain text file that I need to read in using C#, manipulate it a bit then I need to email it. That's easy enough, but it also has to stay in the same format as it's original state: </p>

<p>This is an excerpt from a sample file "mySample.txt": </p>

<pre><code>   *****************************NB!!!!**********************************
   *Please view http://www.sdfsdf.comsdfsdfsdf  .                      *
   *********************************************************************


        *** DO NOT DELETE or ALTER ANY OF THE FOLLOWING TEXT ***

                          Company X PTY.
                    Lorem Ipsum Office
                  Last Change - 01 February 2008

           APPLICATION TO ESTABLISH A COMMUNITY WITHIN
                THE RESTIN DISTRICT OF THE IPSUM.

    ===================================================================

    1. COMMUNITY and ACTION

    Give the name of the community.  This is the name that will be
    used in tables and lists associating the community with the name
    district and community forum.  The community names that are
    delegated by Lorem are at the district level
    The Action field specifies whether this is a 'N'ew application, an
    'U'pdate or a 'R' removal.

    1a. Complete community name:**{0}**
    1b. Action - [N]ew, [U]pdate, or [R]emoval :**{1}**
</code></pre>

<p>As you can see I've got place holders {0} and {1} in the file which is to be replaced by an automated process. </p>

<p>In my C# I'm using a stream reader to read the entire file into a StringBuilder object then replacing the place holders using the StringBuilder.AppendFormat method. </p>

<p>The problem is when I add the text to a email message body and send it the format ends up looking different. It looks like a bunch of spaces or tabs get removed in the process. </p>

<pre><code>private void Submit_Click(object sender, EventArgs e)
    {
        //create mail client
        System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient();
        System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage();
        message.To.Add(ConfigurationManager.AppSettings["SubmitToEmail"]);
        message.Bcc.Add("xyz@test.com");
        message.Subject = "Test Subject";

        message.BodyEncoding = Encoding.ASCII;
        message.IsBodyHtml = false;
        message.Body = _PopulateForm(_GatherInput());//calls method to read the file and replace values
        client.Send(message);

        //cleanup
        client = null;
        message.Dispose();
        message = null;

    }
</code></pre>

<p>Anyone have any ideas on how to keep the formatting in tact? </p>

<p>Thanks,
Jacques</p>
