available
Returns an estimated number of bytes that can be read or skipped without blocking for more input. This method returns the number of bytes available in the buffer plus those available in the source stream, but see available for important caveats.
Return
the estimated number of bytes available
Throws
if this stream is closed or an error occurs