discarding output : Java Glossary

go to home page D words local find full screen, hide local find menu Google search web for more information on this topic jump to foot of page translate this page with Babelfish punctuation 0-9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z (all) ©1996-2009 2009-03-16 Roedy Green, Canadian Mind Products
discarding output
Sometimes the user does not want the output of a Java program. How can you, as programmer, efficiently discard it without having to insert ifs around every write? You need a NullOutputStream class, an implementation of OutputStream that does nothing with the output given to it.
// discard all output to System.out and System.err

PrintStream discard = new PrintStream( new NullOutputStream() );
System.setOut( discard );
System.setErr( discard );
You could knock off the trivial code for NullOutputStream yourself or get it from Apache Commons JavaDoc Subversion repository.

This technique is more efficient than writing to the “NUL” device, since no bytes are sent to the OS, and there is no buffering overhead.

 // discarding output on windows, note "nul" with one l.
System.setOut( new PrintStream( new File( "nul" )));

// discarding output on Unix, note null with two ls.
System.setOut( new PrintStream( new File( "/dev/null" )));
Thanks go to John B. Matthews for the information.

CMP homejump to top You can get the freshest copy of this page from: or possibly from your local J: drive (Java virtual drive/mindprod.com website mirror)
http://mindprod.com/jgloss/discardingoutput.html J:\mindprod\jgloss\discardingoutput.html
CMP logofeedback Please email your feedback for publication, errors, omissions, typos, formatting errors, ambiguities, unclear wording, broken/redirected link reports, suggestions to improve this page or comments to Roedy Green : feedback email
mindprod.com IP:[65.110.21.43]
view BlogYour face IP:[38.107.191.100]
You are visitor number 11.