Java ProcessBuilder redirectErrorStream()方法与示例

语法:

    public boolean  redirectErrorStream ();
    public ProcessBuilder  redirectErrorStream (boolean re_err_stm);

ProcessBuilder类redirectErrorStream()方法

  • redirectErrorStream()方法在java.lang包中可用。

  • redirectErrorStream()方法用于检查此流程生成器是否结合了标准错误和标准输出。

  • redirectErrorStream(boolean re_err_stm)方法用于放置此流程生成器的redirectErrorStream属性。

  • 在合并错误和输出流时,这些方法不会引发异常。

  • 这些是非静态方法,只能通过类对象访问,如果尝试使用类名称访问这些方法,则会收到错误消息。

参数:

  • 在第一种情况下,它不接受任何参数。

  • 在第二种情况下,布尔值re_err_stm-此参数表示新属性。

返回值:

在第一种情况下,该方法的返回类型为布尔值–返回true,然后将错误输出与标准输出合并,以便使用getInputStream()Process类的方法可以读取错误并输出,否则返回false。

在第二种情况下,方法的返回类型为ProcessBuilder,它将返回此流程生成器。

示例

//Java程序演示示例 
//redirectErrorStream()ProcessBuilder类的方法

import java.io.*;
import java.util.*;

public class RedirectErrorStream {
    public static void main(String[] args) throws Exception {
        //创建一个List对象
        List l = new LinkedList();

        //通过使用add()添加元素的方法
        l.add("TextPad.exe");
        l.add("notepad.exe");

        //实例化ProcessBuilder对象
        ProcessBuilder pr_bu = new ProcessBuilder(l);

        //通过使用redirectErrorStream()方法是 
        //检查此错误流是否已重定向
        //是否
        System.out.println("pr_bu.redirectErrorStream() =" + pr_bu.redirectErrorStream());

        //通过使用redirectErrorStream(boolean re_err_stm)方法不 
        //重定向错误流
        pr_bu.redirectErrorStream(false);
        System.out.println("pr_bu.redirectErrorStream(false) =" + pr_bu.redirectErrorStream());

        // By using redirectErrorStream(boolean re_err_stm) //方法是 
        //重定向错误流
        pr_bu.redirectErrorStream(true);
        System.out.println("pr_bu.redirectErrorStream(true) =" + pr_bu.redirectErrorStream());
    }
}

输出结果

pr_bu.redirectErrorStream() =false
pr_bu.redirectErrorStream(false) =false
pr_bu.redirectErrorStream(true) =true