All Packages Class Hierarchy This Package Previous Next Index
java.lang.Object | +----java.io.InputStream | +----java.io.FilterInputStream | +----java.io.BufferedInputStream
mark method before subsequent calls to the 
 reset method fail.
  pos field at the time the last 
 mark method was called.
  mark 
 and reset methods.
  mark method was last called on this input stream.
  n bytes of data from the 
 input stream.
protected byte buf[]
protected int count
protected int pos
buf array.
protected int markpos
pos field at the time the last 
 mark method was called. The value of this field is 
 -1 if there is no current mark.
protected int marklimit
mark method before subsequent calls to the 
 reset method fail.
public BufferedInputStream(InputStream in)
public BufferedInputStream(InputStream in, int size)
public synchronized int read() throws IOException
int in the range 
 0 to 255. If no byte is available 
 because the end of the stream has been reached, the value 
 -1 is returned. This method blocks until input data 
 is available, the end of the stream is detected, or an exception 
 is thrown. 
 
 The read method of BufferedInputStream 
 returns the next byte of data from its buffer if the buffer is not 
 empty. Otherwise, it refills the buffer from the underlying input 
 stream and returns the next character, if the underlying stream 
 has not returned an end-of-stream indicator.
-1 if the end of the
             stream is reached.
    
 public synchronized int read(byte b[],
                              int off,
                              int len) throws IOException
If this stream's buffer is not empty, bytes are copied from it into the array argument. Otherwise, the buffer is refilled from the underlying input stream and, unless the stream returns an end-of-stream indication, the array argument is filled with characters from the newly-filled buffer.
 As an optimization, if the buffer is empty, the mark is not valid,
 and len is at least as large as the buffer, then this
 method will read directly from the underlying stream into the given
 array.  Thus redundant BufferedInputStreams will not copy
 data unnecessarily.
-1 if the end of
             the stream has been reached.
    public synchronized long skip(long n) throws IOException
n bytes of data from the 
 input stream. The skip method may, for a variety of 
 reasons, end up skipping over some smaller number of bytes, 
 possibly zero. The actual number of bytes skipped is returned. 
 
 The skip method of BufferedInputStream 
 compares the number of bytes it has available in its buffer, 
 k, where k = count - pos, 
 with n. If n ≤ k, 
 then the pos field is incremented by n. 
 Otherwise, the pos field is incremented to have the 
 value count, and the remaining bytes are skipped by 
 calling the skip method on the underlying input 
 stream, supplying the argument n - k.
public synchronized int available() throws IOException
 The available method of 
 BufferedInputStream returns the sum of the the number 
 of bytes remaining to be read in the buffer 
 (count - pos) 
 and the result of calling the available method of the 
 underlying input stream.
public synchronized void mark(int readlimit)
reset method repositions the stream at 
 the last marked position so that subsequent reads re-read the same 
 bytes. 
 
 The readlimit argument tells the input stream to 
 allow that many bytes to be read before the mark position gets 
 invalidated.
public synchronized void reset() throws IOException
mark method was last called on this input stream. 
 If the stream has not been marked, or if the mark has been invalidated, an IOException is thrown. Stream marks are intended to be used in situations where you need to read ahead a little to see what's in the stream. Often this is most easily done by invoking some general parser. If the stream is of the type handled by the parser, it just chugs along happily. If the stream is not of that type, the parser should toss an exception when it fails. If an exception gets tossed within readlimit bytes, the parser will allow the outer code to reset the stream and to try another parser.
public boolean markSupported()
mark 
 and reset methods. The markSupported 
 method of BufferedInputStream returns 
 true.
boolean indicating if this stream type supports
          the mark and reset methods.
    All Packages Class Hierarchy This Package Previous Next Index