Press Room

Press Release: March 24, 1999

The Power of Java's I/O Explored in New O'Reilly Release

SEBASTOPOL, CA--"Almost every serious Java program eventually makes use of I/O for one purpose or another," says Elliot Rusty Harold, author of the just-off-the-press book Java I/O. "While text book examples often limit themselves to command line arguments and system.out.println(), real world programs and real world programmers need to write files, open sockets, encrypt data, talk to serial port devices, communicate with databases and do a whole hell of a lot more. Using well designed I/O as opposed to System.out.println() is one of the distinguishing factors between amateur and professional programmers."

Java is no longer just a tool for creating animated icons on web pages. It's a full-fledged programming language that is often the first choice for many coders today. Java's clean structure, automated memory management, and webcentric design makes it one of the fastest development tools around. Mastery of the Java I/O is a crucial skill for a Java programmer. "Unfortunately," explains Harold, "precisely because Java I/O is structured so differently from I/O in the languages most of us grew up with, many programmers don't realize how simple and powerful it really is. Programmers try to force Java I/O to fit into the model of a non-internationalized language like C or Pascal, and it doesn't. Once you understand how the different languages perform the logically separate functions, and how all the layers connect together, then performing operations that would be unmanageably complex in other languages, becomes almost trivial."

Until now, there was little published that went beyond the most basic of streams. Java professionals certainly are familiar with these streams, but did you know that there's a CryptInputStream for reading encrypted data? And a ZipOutputStream for automatically compressing data? Do you know how to use buffered streams effectively to make your I/O operations more efficient? Java I/O tells you all you need to know about streams -and probably more. It also covers essential subjects such character sets and formatting; and how to control number formatting, use characters aside from the standard (but outdated) ASCII character set, and get a head start on writing truly multilingual software (Java's support of the UNICODE standard allows you to do I/O in virtually any language).

For more information on this new book, including Table of Contents and index, see:

Read an interview of the author at:


Java I/O
By Elliotte Rusty Harold
1st Edition March 1999 (US)
1-56592-485-1, 596 pages, $32.95 (US$)

About O’Reilly

For 40 years, O’Reilly has provided technology and business training, knowledge, and insight to help companies succeed. Our unique network of experts and innovators share their knowledge and expertise through the company’s SaaS-based training and learning solution, O’Reilly online learning. O’Reilly delivers highly topical and comprehensive technology and business learning solutions to millions of users across enterprise, consumer, and university channels. For more information, visit

Email a link to this press release