    All Packages  Class Hierarchy  This Package  Previous  Next  Index

# Class java.io.ByteArrayInputStream

    java.lang.Object
       |
       +----java.io.InputStream
               |
               +----java.io.ByteArrayInputStream

public class ByteArrayInputStream
extends InputStream

This class allows an application to create an input stream in which the bytes read are supplied by the contents of a byte array. Applications can also read bytes from a string by using a `StringBufferInputStream`.

See Also:
  StringBufferInputStream

##

buf
  The byte array containing the data.
count
  The index one greater than the last valid character in the input stream buffer.
mark
  The currently marked position in the stream.
pos
  The index of the next character to read from the input stream buffer.

##

ByteArrayInputStream(byte[])
  Creates a new byte array input stream that reads data from the specified byte array.
ByteArrayInputStream(byte[], int, int)
  Creates a new byte array input stream that reads data from the specified byte array.

##

available()
  Returns the number of bytes that can be read from this input stream without blocking.
mark(int)
  Set the current marked position in the stream.
markSupported()
  Tests if ByteArrayInputStream supports mark/reset.
read()
  Reads the next byte of data from this input stream.
read(byte[], int, int)
  Reads up to `len` bytes of data into an array of bytes from this input stream.
reset()
  Resets the buffer to the marked position.
skip(long)
  Skips `n` bytes of input from this input stream.

##

buf

     protected byte buf[]

  The byte array containing the data.

pos

     protected int pos

  The index of the next character to read from the input stream buffer.

mark

     protected int mark

  The currently marked position in the stream. ByteArrayInputStreams are marked at position zero by default when constructed. They may be marked at another position within the buffer by the `mark()` method. The current buffer position is set to this point by the `reset()` method.

count

     protected int count

  The index one greater than the last valid character in the input stream buffer.

##

ByteArrayInputStream

     public ByteArrayInputStream(byte buf[])

  Creates a new byte array input stream that reads data from the specified byte array. The byte array is not copied.

  Parameters:
    buf - the input buffer.

ByteArrayInputStream

     public ByteArrayInputStream(byte buf[],
                                 int offset,
                                 int length)

  Creates a new byte array input stream that reads data from the specified byte array. Up to `length` characters are to be read from the byte array, starting at the indicated offset.

  The byte array is not copied.

  Parameters:
    buf - the input buffer.
    offset - the offset in the buffer of the first byte to read.
    length - the maximum number of bytes to read from the buffer.

##

read

     public synchronized int read()

  Reads the next byte of data from this input stream. The value byte is returned as an `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.

  The `read` method of `ByteArrayInputStream` cannot block.

  Returns:
    the next byte of data, or `-1` if the end of the stream has been reached.
  Overrides:
    read in class InputStream

read

     public synchronized int read(byte b[],
                                  int off,
                                  int len)

  Reads up to `len` bytes of data into an array of bytes from this input stream. This `read` method cannot block.

  Parameters:
    b - the buffer into which the data is read.
    off - the start offset of the data.
    len - the maximum number of bytes read.
  Returns:
    the total number of bytes read into the buffer, or `-1` if there is no more data because the end of the stream has been reached.
  Overrides:
    read in class InputStream

skip

     public synchronized long skip(long n)

  Skips `n` bytes of input from this input stream. Fewer bytes might be skipped if the end of the input stream is reached.

  Parameters:
    n - the number of bytes to be skipped.
  Returns:
    the actual number of bytes skipped.
  Overrides:
    skip in class InputStream

available

     public synchronized int available()

  Returns the number of bytes that can be read from this input stream without blocking.

  The `available` method of `ByteArrayInputStream` returns the value of `count - pos`, which is the number of bytes remaining to be read from the input buffer.

  Returns:
    the number of bytes that can be read from the input stream without blocking.
  Overrides:
    available in class InputStream

markSupported

     public boolean markSupported()

  Tests if ByteArrayInputStream supports mark/reset.

  Overrides:
    markSupported in class InputStream

mark

     public void mark(int markpos)

  Set the current marked position in the stream. ByteArrayInputStreams are marked at position zero by default when constructed. They may be marked at another position within the buffer by this method.

  Overrides:
    mark in class InputStream

reset

     public synchronized void reset()

  Resets the buffer to the marked position. The marked position is the beginning unless another position was marked.

  Overrides:
    reset in class InputStream

    All Packages  Class Hierarchy  This Package  Previous  Next  Index

Submit a bug or feature - Version 1.1.8 of Java Platform API Specification
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1995-1999 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.