Получение консольного вывода из jar в c # - PullRequest
6 голосов
/ 04 августа 2011

У меня есть банка, который, если я запускаю из командной строки, возвращает мне значение true или false, напечатанное на консоли

я пытаюсь запустить это из c # и получить результат - это делается так

Process p = new Process();
p.StartInfo = new ProcessStartInfo("java", @"-jar test.jar " + paramterForStringArgs[0]);
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.UseShellExecute = false;
p.Start();
String s = p.StandardOutput.ReadToEnd();
p.WaitForExit();
Trace.WriteLine("data = " + s);
return false;

Кажется, я всегда получаю пустую строку, и мне было интересно, почему это может быть, или есть ли лучший способ сделать это?

1 Ответ

6 голосов
/ 05 августа 2011

Установка RedirectStandardError и вызов p.StandardError.ReadToEnd() читает любую ошибку, выводимую процессом.

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