public abstract int read () throws IOException

Reads a byte of data. This method will block if no input is available.

Returns:  the byte read, or -1 if the end of the stream is reached.

Exceptions:
IOException    If an I/O error has occurred.