I have a StringBuilder object that I append some text to and then convert to a string for a File.WriteAllText(). StringBuilder sb = new StringBuilder(); sb.Append("suff"); //Other sb.Append()'s File.WriteAllText("C:\Something.txt",sb.ToString()); The problem is that one of my appends is this: sb.Append(Convert.ToChar(151)) Which is supposed to make a "long dash". When the file gets written though, that byte comes out as 63, a question mark. I've tried various Encoding parameters but no