0

コンソールから入力を読み取り、出力をコンソールに書き込むコンソール アプリケーションがあります。最初のプログラムを実行し、そのコンソール入力をモックして出力を取得する別のプログラムを作成する必要があります。この問題の調査方法を教えてください。

コンソール アプリケーション コードの (非常に簡単な) 例:

string input = Console.ReadLine();
int value = int.Parse(input);
Console.WriteLine(value * value);
4

1 に答える 1

2

新しい を作成し、それとプロパティをProcess割り当てることができます。StandardInputStandardOutput

ProcessStartInfo processStartInfo = 
  new ProcessStartInfo(executableName, executableParameter);
processStartInfo.UseShellExecute = false;
processStartInfo.ErrorDialog = false;
processStartInfo.RedirectStandardError = true;
processStartInfo.RedirectStandardInput = true;
processStartInfo.RedirectStandardOutput = true;
Process process = new Process();
process.StartInfo = processStartInfo;
bool processStarted = process.Start();
StreamWriter inputWriter = process.StandardInput;
StreamReader outputReader = process.StandardOutput;
StreamReader errorReader = process.StandardError;
//Write and read process console using inputWriter and outputReader.
process.WaitForExit();
于 2013-04-08T10:47:00.803 に答える