This class is 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.
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.
See Also
Field Summary
protected String | buffer | The string from which bytes are read. |
protected int | count | The number of valid characters in the input stream buffer. |
protected int | pos | The index of the next character to read from the input stream buffer. |
Public Constructor Summary
StringBufferInputStream(String s)
Creates a string input stream to read data from the specified string.
|
Public Method Summary
synchronized int |
available()
Returns the number of bytes that can be read from the input
stream without blocking.
|
synchronized int |
read()
Reads the next byte of data from this input stream.
|
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. |
synchronized void |
reset()
Resets the input stream to begin reading from the first character
of this input stream's underlying buffer.
|
synchronized long |
skip(long n)
Skips
n bytes of input from this input stream. |
Inherited Method Summary
Fields
protected int pos
The index of the next character to read from the input stream buffer.
See Also
Public Constructors
public StringBufferInputStream (String s)
Creates a string input stream to read data from the specified string.
Parameters
s | the underlying input buffer. |
---|
Public Methods
public synchronized int available ()
Returns the number of bytes that can be read from the input stream without blocking.
Returns
- the value of
count - pos
, which is the number of bytes remaining to be read from the input buffer.
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.
Returns
- the next byte of data, or
-1
if the end of the stream is reached.
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
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.
public synchronized void reset ()
Resets the input stream to begin reading from the first character of this input stream's underlying buffer.
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.