Book Review: Java I/O 2nd Edition by Elliotte Rusty Harold

Java I/O discusses in great detail a subject that is, in many ways, the bread and butter of Java: input and output. Given the expanded capabilities introduced with Java 1.4, 1.5 and 1.6, this book's attention to them is timely and on target.Here are some techniques that the book teaches: 

  • Reading and writing files

  • Communicating over network sockets

  • Filtering data

  • Interpreting a wide variety of formats for integer and floating-point numbers

  • Passing data between threads

  • Encrypting and decrypting content

  • Calculating digital signatures for streams

  • Compressing and decompressing data

  • Writing objects to streams

  • Copying, moving and renaming files and directories

  • Choosing files from a GUI

  • Reading and writing non-English text in a variety of character sets

  • Talking directly to modems and other serial port devices

  • Controlling printers and other parallel port devices

  • Managing and communicating with USB devices

  • Transmitting data wirelessly with Bluetooth

  • Communicating with the outside world from small devices such as cellphones and PDAs
The book has 25 chapters, divided into the following logical parts:
  • Basic I/O, or the stream

  • Data Sources, such as files and networks

  • Filter Streams, or processing data as you read or write

  • New I/O, which deals with the changes made in Java 1.4

  • File System: moving, deleting, renaming and choosing files

  • Text: reader and writer streams

  • Devices: the Java Communications API, USB, J2ME and Bluetooth

Java I/O isn't for everyone. It's an in-depth book that assumes you already have a basic familiarity with Java, and you know its syntax. You should already know object-oriented programming, and you should already have written simple applications and applets. Although the examples given in the book are straightforward, you will quickly be overwhelmed if you're a Java beginner, so you may want to pick up another book such as Learning Java or Java in a Nutshell first.

Elliotte Rusty Harold put a lot of hard work and detail into making Java I/O understandable and usable, and it shows. This book will prove an invaluable resource to the Java programmer interested in strengthening his or her I/O knowledge.

Article tags

Spread the word
Bookmark and Share
Profile image for raoul-pop

Article Author: Raoul Pop

I'm a web developer, blogger and photographer. I write daily about technology, photography, travel and other interesting things on my site. I invite you to subscribe to my RSS feed and follow my work.

Visit Raoul Pop's author pageRaoul Pop's Blog

Read comments on this article, and add some feedback of your own
  • Java I/O Java I/O

    All of Java's Input/Output (I/O) facilities are based on streams, which provide simple ways to read and write data of different types. Java provides many different kinds of streams, each with its own application. ...

  • Java NIO Java NIO
  • Java Network Programming, Third Edition Java Network Programming, Third Edition
  • Learning Java Learning Java
  • Beginning Cryptography with Java Beginning Cryptography with Java
  • Java In A Nutshell, 5th Edition Java In A Nutshell, 5th Edition

Article comments

Add your comment, speak your mind

Personal attacks are NOT allowed.
Please read our comment policy.
Please preview your comment.

blogcritics lists for Nov 29, 2009

fresh articles Most recent articles site-wide

fresh comments Most recent comments site-wide

most comments Most comments in 24hrs

top writers Most prolific Blogcritics for October

top commenters Most prolific Commenters in 24 hrs