Close

Java - System.setErr() Examples

[Last Updated: Nov 8, 2025]

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 org.codehaus.mojo.exec.AbstractExecJavaBase.executeMainMethod(AbstractExecJavaBase.java:402)
at org.codehaus.mojo.exec.AbstractExecJavaBase.doExecClassLoader(AbstractExecJavaBase.java:377)
at org.codehaus.mojo.exec.AbstractExecJavaBase.lambda$execute$0(AbstractExecJavaBase.java:287)




See Also