Close

Java - System.setErr() Examples

Java Java API 


Class:

java.lang.System

java.lang.Objectjava.lang.Objectjava.lang.Systemjava.lang.SystemLogicBig

Method:

public static void setErr(PrintStream err)

Reassigns the "standard" error output stream.


Examples


package com.logicbig.example.system;


import java.io.ByteArrayOutputStream;
import java.io.PrintStream;

public class SetErrExample {

public static void main(String... args) {
ByteArrayOutputStream stream = new ByteArrayOutputStream();
PrintStream ps = new PrintStream(stream);
System.setErr(ps);

try {
int i = 1 / 0;
} catch (Exception e) {
e.printStackTrace();
}

System.out.println("retrieving error from byte stream");
byte[] byes = stream.toByteArray();
String s = new String(byes);
System.out.printf("-- error -- %n%s%n", s);
}
}

Output

retrieving error from byte stream
-- error --
java.lang.ArithmeticException: / by zero
at com.logicbig.example.system.SetErrExample.main(SetErrExample.java:20)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:293)
at java.lang.Thread.run(Thread.java:745)




See Also