title: (simple) CSV download with special characters drives me nuts
body: <p>this one is driving me nuts.
  And last week i thougt i cracked the nut, but unfortunately not....</p>
  
  <p>so i want to create a CSV download for other users to open up in MS-Word (they want the CSV format)</p>
  
  <p>so i end up with this code in a MVC2 controller:</p>
  
  <pre><code>Response.AddHeader("Content-Disposition", "attachment; filename=PersonalMessages.csv");
  Response.ContentType = "application/csv";
  string s = new DownloadService().GetAddresses();
  Response.Write(s);
  Response.End();
  return null;
  </code></pre>
  
  <p>the string 's' contains (among other info) these chars: é å æ É à</p>
  
  <p>When i open it in notepad: OK</p>
  
  <p>when i open it in Notepad++: Ok</p>
  
  <p>when i open it up in Excel: Not ok, it shows this:   Ã© Ã¥ Ã¦ Ã‰ Ã </p>
  
  <p>(when i open it up in Notepadd++, it says it is in UTF8 encoding without BOM, whatever i tried with UTF8 encodings with booleans in the constructor to get the BOM in, it didn;t work out)</p>
  
  <p>So i asked a question last week, and the answer was to let the GetAddresses() function return a byte array.</p>
  
  <p>So i did convert my text using this:</p>
  
  <pre><code>// C# to convert a string to a byte array.
  public static byte[] StrToByteArray(string str)
  {
      System.Text.UnicodeEncoding encoding = new System.Text.UnicodeEncoding();
      return encoding.GetBytes(str);
  }
  </code></pre>
  
  <p>, and wrote the byte array in the response and all was fine! Notepad, notepad++ and Excel!
  Great, live is good.</p>
  
  <p>But then i found out they we're opening up the file in Word. Well, no problem i thought.</p>
  
  <p>But then they aid: Word can not open the file (diretly), <strong>it asks for the encoding first</strong>, and that is a problem because they are using it in an automated process.</p>
  
  <p>When they open the file in Notepad and save it as unicode, all goes well.</p>
  
  <p>I've also tried this in the action method:</p>
  
  <pre><code>Response.ContentEncoding = Encoding.Unicode ;
  Response.HeaderEncoding = Encoding.UTF8;
  </code></pre>
  
  <p>but that didn't help out.</p>
  
  <p>Does anybody has any clue?</p>