devxlogo

Redirect System.out and System.err

Redirect System.out and System.err

A crude but common way of debugging Java programs is to use the public System.out and/or System.err instances of PrintStream to display information:

 System.out.println("Entering section A of my code");

One drawback to this method is that if the information is sent to a display (usually the default), it may scroll off the screen before you’re able to view the message. Also, you may wish to have the messages stored in a more permanent way. You can accomplish this by redirecting the output to some place such as a printer or a local disk file using the System.setErr() and System.setOut() static methods. For example, this code will cause error messages to be stored in a disk file:

 FileOutputStream fos = new FileOutputStream("errors.txt");PrintStream ps = new PrintStream(fos);System.setErr(ps);

You should note, however, that the PrintStream class is deprecated, and as a result, its use will trigger a deprecation warning when compiled.

devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist