Как изменить кодировку? - PullRequest
2 голосов
/ 17 января 2011

Мне нужно конвертировать или установить кодировку windows-1251

Process p = new Process();
StreamWriter sw;
StreamReader sr;
StreamReader err;



ProcessStartInfo psI = new ProcessStartInfo("cmd");
psI.UseShellExecute = false;

psI.RedirectStandardInput = true;
psI.RedirectStandardOutput = true;
psI.RedirectStandardError = true;
psI.CreateNoWindow = true;
p.StartInfo = psI;


p.Start();
sw = p.StandardInput;
sr = p.StandardOutput;
err = p.StandardError;



sw.AutoFlush = true;
if (tbComm.Text != "")
    sw.WriteLine(tbComm.Text);
else
    //execute default command
    sw.WriteLine("dir \\");


sw.Close();

textBox1.Text = sr.ReadToEnd();// this not support russian word. I need convert or set encoding windows-1251
textBox1.Text += err.ReadToEnd();

1 Ответ

0 голосов
/ 17 января 2011

Вы должны иметь возможность указать кодировку для StandardOutput на вашем ProcessStartInfo, прежде чем указывать на него StreamReader.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...