Java を使用してバイナリ ファイルを起動し、入力ストリームと出力ストリームを使用して対話する必要があります。それがどのように機能するかを理解するためにプロトタイプを作成しましたが、これまでのところ、得られた唯一の出力はnull
. ただし、単独で実行すると、子プログラムが出力を生成します。私は何を間違っていますか?
import java.io.*;
public class Stream {
public static void main(String args[]) {
Process SaddleSumExec = null;
BufferedReader outStream = null;
BufferedReader inStream = null;
try {
SaddleSumExec = Runtime.getRuntime().exec("/home/alex/vendor/program weights.txt list.txt");
}
catch(IOException e) {
System.err.println("Error on inStream.readLine()");
e.printStackTrace();
}
try {
inStream = new BufferedReader(new InputStreamReader
(SaddleSumExec.getInputStream()));
System.out.println(inStream.readLine());
}
catch(IOException e){
System.out.println("Error.");
}
}
}