That's because none of those character exist in the ASCII encoding.
Try using UTF8 instead!
-------------
Ok - still confused. I've tried your code, and the text gets preserved just fine. The special characters are not going to be an issue unless you go back to something like ASCII. I've rewritten it slightly:
string specialcharactersdata = @"Á,õn O'kim José Nuñez JOSNUÑ44 ";
Console.WriteLine(specialcharactersdata);
using (MemoryStream ms = new MemoryStream())
{
StreamWriter sw = new StreamWriter(ms);
sw.WriteLine(specialcharactersdata);
sw.Flush();
ms.Position = 0;
StreamReader sr = new StreamReader(ms);
string myStr = sr.ReadToEnd();
Console.WriteLine(myStr);
Console.Read();
}
Which produces the output I'd expect, which seems to align with what is required in your latest comment but not with the original question.