public int read(byte[] b) throws java.io.IOException {
  return read(b,0,b.length);
}

public int read ( byte [ ] b ) throws java . io . IOException { return read ( b , 0 , b . length ) ; }
reads some number of bytes from the input stream and stores them into the buffer array b . the number of bytes actually read is returned as an integer . this method blocks until input data is available , end of file is detected , or an exception is thrown . if b is null , a nullpointerexception is thrown . if the length of b is zero , then no bytes are read and 0 is returned ; otherwise , there is an attempt to read at least one byte . if no byte is available because the stream is at end of file , the value - 1 is returned ; otherwise , at least one byte is read and stored into b . the first byte read is stored into element b [ 0 ] , the next one into b [ 1 ] , and so on . the number of bytes read is , at most , equal to the length of b . let k be the number of bytes actually read ; these bytes will be stored in elements b [ 0 ] through b [ k - 1 ] , leaving elements b [ k ] through b [ b . length - 1 ] unaffected . if the first byte cannot be read for any reason other than end of file , then an ioexception is thrown . in particular , an ioexception is thrown if the input stream has been closed . the read ( b ) method for class inputstream has the same effect as : read ( b , 0 , b . length )
