私はプログラムTest.javaを持っている:System.setOut()でRuntime.getRuntime()。exec()の出力をリダイレクトします。
import java.io.*;
public class Test {
public static void main(String[] args) throws Exception {
System.setOut(new PrintStream(new FileOutputStream("test.txt")));
System.out.println("HelloWorld1");
Runtime.getRuntime().exec("echo HelloWorld2");
}
}
。これは、ファイルTEXT.TXTにHelloWorld1とHelloWorld2を印刷するようになっています。しかし、私がファイルを見ると、私はHelloWorld1しか見ることができません。
HelloWorld2はどこに行きましたか?それは薄い空気に消えましたか?
HelloWorld2をtest.txtにリダイレクトしたいとします。私はファイルを既に開いているエラーを取得するので、単にコマンドに ">> test.txt"を追加することはできません。だから私はこれをどうやってやるの?
ランタイムを使用する必要がありますか? – Navi
@Navi:代替はありますか? Tell。私は知りたいです!または、ProcessBuilderを使用することを意味しますか? –