状況は次のとおりです。別の Java アプリケーション example.exe を実行する Java アプリケーションがあります (example.exe には System.out.println("..."); がいくつかあります)。
example.exe から出力ストリームを取得したいので、そのようなものを試しました:(かなり標準に見えます)
final Process process = Runtime.getRuntime().exec("example.exe");
new Thread() {
public void run() {
try {
BufferedReader inputReader = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line = "";
try {
while((line = inputReader.readLine()) != null) {
inputText = inputText + line;
}
System.out.println(inputText);
} finally {
inputReader.close();
}
} catch(IOException ioe) {
ioe.printStackTrace();
}
}
}.start();
example.exe の出力メッセージを取得したいのですが、うまくいかず、理由がわかりません。