Class: java.io.StringBufferInputStream

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

Only the low eight bits of each character in the string are used by this class.

Authors:
@author Arthur van Hoff
See:
@see java.io.ByteArrayInputStream
@see java.io.StringReader
Deprecated:
@deprecated This class does not properly convert characters into bytes. As of JDK 1.1, the preferred way to create a stream from a string is via the StringReader class.
Since:
@since JDK1.0

Inheritance

Superclass tree: Implements:

Methods

  • StringBufferInputStreamtop

    public StringBufferInputStream(String s)
    Creates a string input stream to read data from the specified string.
    Parameters:
    @param s the underlying input buffer.
    Google Code Search
    Stack Overflow
  • availabletop

    public synchronized int available()
    Returns the number of bytes that can be read from the input stream without blocking.
    Return:
    @return the value of count - pos, which is the number of bytes remaining to be read from the input buffer.
    Override hierarchy:
    available from InputStream
    Google Code Search
    Stack Overflow
  • readtop

    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 StringBufferInputStream cannot block. It returns the low eight bits of the next character in this input stream's buffer.

    Return:
    @return the next byte of data, or -1 if the end of the stream is reached.
    Override hierarchy:
    read from InputStream
    Google Code Search
    Stack Overflow
  • readtop

    public synchronized int read(byte[] b, int off, int len)
    Reads up to len bytes of data from this input stream into an array of bytes.

    The read method of StringBufferInputStream cannot block. It copies the low eight bits from the characters in this input stream's buffer into the byte array argument.

    Parameters:
    @param b the buffer into which the data is read.
    @param off the start offset of the data.
    @param len the maximum number of bytes read.
    Return:
    @return 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.
    Override hierarchy:
    read from InputStream
    Google Code Search
    Stack Overflow
  • resettop

    public synchronized void reset()
    Resets the input stream to begin reading from the first character of this input stream's underlying buffer.
    Override hierarchy:
    reset from InputStream
    Google Code Search
    Stack Overflow
  • skiptop

    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:
    @param n the number of bytes to be skipped.
    Return:
    @return the actual number of bytes skipped.
    Override hierarchy:
    skip from InputStream
    Google Code Search
    Stack Overflow

Fields

  • buffer

    protected String buffer
    The string from which bytes are read.
  • count

    protected int count
    The number of valid characters in the input stream buffer.
  • pos

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