java.lang.ProcessAPI中如是写:创建进程的方法可能无法针对某些本机平台上的特定进程很好地工作,比如,本机窗口进程,守护进程,Microsoft Windows 上的 Win16/DOS 进程,或者 shell 脚本。创建的子进程没有自己的终端或控制台。它的所有标准 io(即 stdin、stdout 和 stderr)操作都将通过三个流 (getOutputStream()、getInputStream() 和 getErrorStream()) 重定向到父进程。父进程使用这些流来提供到子进程的输入和获得从子进程的输出。请教:当获那个stdin时,给子进程写入数据的时候,如何在子进程中处理?我写的
子进程
Scanner sc = new Scanner(System.in);
System.out.println(sc.next());
父进程
Runtime runtime = Runtime.getRuntime();
Process process = runtime.exec("java 子进程");
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(process.getOutputStream()));
bw.write("输入"); 然后获得子进程输出
BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream()));貌似读不到数据。本人菜鸟,希望大家不胜我烦的帮助下先行谢过