public class ByteBufInputStream
extends java.io.InputStream
implements java.io.DataInput
InputStream which reads data from a ByteBuf.
A read operation against this stream will occur at the readerIndex
of its underlying buffer and the readerIndex will increase during
the read operation. Please note that it only reads up to the number of
readable bytes determined at the moment of construction. Therefore,
updating ByteBuf.writerIndex() will not affect the return
value of available().
This stream implements DataInput for your convenience.
The endianness of the stream is not always big endian but depends on
the endianness of the underlying buffer.
ByteBufOutputStream| 构造器和说明 |
|---|
ByteBufInputStream(ByteBuf buffer)
Creates a new stream which reads data from the specified
buffer
starting at the current readerIndex and ending at the current
writerIndex. |
ByteBufInputStream(ByteBuf buffer,
boolean releaseOnClose)
Creates a new stream which reads data from the specified
buffer
starting at the current readerIndex and ending at the current
writerIndex. |
ByteBufInputStream(ByteBuf buffer,
int length)
Creates a new stream which reads data from the specified
buffer
starting at the current readerIndex and ending at
readerIndex + length. |
ByteBufInputStream(ByteBuf buffer,
int length,
boolean releaseOnClose)
Creates a new stream which reads data from the specified
buffer
starting at the current readerIndex and ending at
readerIndex + length. |
| 限定符和类型 | 方法和说明 |
|---|---|
int |
available() |
void |
close() |
void |
mark(int readlimit) |
boolean |
markSupported() |
int |
read() |
int |
read(byte[] b,
int off,
int len) |
boolean |
readBoolean() |
byte |
readByte() |
int |
readBytes()
Returns the number of read bytes by this stream so far.
|
char |
readChar() |
double |
readDouble() |
float |
readFloat() |
void |
readFully(byte[] b) |
void |
readFully(byte[] b,
int off,
int len) |
int |
readInt() |
java.lang.String |
readLine() |
long |
readLong() |
short |
readShort() |
int |
readUnsignedByte() |
int |
readUnsignedShort() |
java.lang.String |
readUTF() |
void |
reset() |
long |
skip(long n) |
int |
skipBytes(int n) |
public ByteBufInputStream(ByteBuf buffer)
buffer
starting at the current readerIndex and ending at the current
writerIndex.buffer - The buffer which provides the content for this InputStream.public ByteBufInputStream(ByteBuf buffer, int length)
buffer
starting at the current readerIndex and ending at
readerIndex + length.buffer - The buffer which provides the content for this InputStream.length - The length of the buffer to use for this InputStream.java.lang.IndexOutOfBoundsException - if readerIndex + length is greater than
writerIndexpublic ByteBufInputStream(ByteBuf buffer, boolean releaseOnClose)
buffer
starting at the current readerIndex and ending at the current
writerIndex.buffer - The buffer which provides the content for this InputStream.releaseOnClose - true means that when close() is called then ReferenceCounted.release() will
be called on buffer.public ByteBufInputStream(ByteBuf buffer, int length, boolean releaseOnClose)
buffer
starting at the current readerIndex and ending at
readerIndex + length.buffer - The buffer which provides the content for this InputStream.length - The length of the buffer to use for this InputStream.releaseOnClose - true means that when close() is called then ReferenceCounted.release() will
be called on buffer.java.lang.IndexOutOfBoundsException - if readerIndex + length is greater than
writerIndexpublic int readBytes()
public void close()
throws java.io.IOException
close 在接口中 java.io.Closeableclose 在接口中 java.lang.AutoCloseableclose 在类中 java.io.InputStreamjava.io.IOExceptionpublic int available()
throws java.io.IOException
available 在类中 java.io.InputStreamjava.io.IOExceptionpublic void mark(int readlimit)
mark 在类中 java.io.InputStreampublic boolean markSupported()
markSupported 在类中 java.io.InputStreampublic int read()
throws java.io.IOException
read 在类中 java.io.InputStreamjava.io.IOExceptionpublic int read(byte[] b,
int off,
int len)
throws java.io.IOException
read 在类中 java.io.InputStreamjava.io.IOExceptionpublic void reset()
throws java.io.IOException
reset 在类中 java.io.InputStreamjava.io.IOExceptionpublic long skip(long n)
throws java.io.IOException
skip 在类中 java.io.InputStreamjava.io.IOExceptionpublic boolean readBoolean()
throws java.io.IOException
readBoolean 在接口中 java.io.DataInputjava.io.IOExceptionpublic byte readByte()
throws java.io.IOException
readByte 在接口中 java.io.DataInputjava.io.IOExceptionpublic char readChar()
throws java.io.IOException
readChar 在接口中 java.io.DataInputjava.io.IOExceptionpublic double readDouble()
throws java.io.IOException
readDouble 在接口中 java.io.DataInputjava.io.IOExceptionpublic float readFloat()
throws java.io.IOException
readFloat 在接口中 java.io.DataInputjava.io.IOExceptionpublic void readFully(byte[] b)
throws java.io.IOException
readFully 在接口中 java.io.DataInputjava.io.IOExceptionpublic void readFully(byte[] b,
int off,
int len)
throws java.io.IOException
readFully 在接口中 java.io.DataInputjava.io.IOExceptionpublic int readInt()
throws java.io.IOException
readInt 在接口中 java.io.DataInputjava.io.IOExceptionpublic java.lang.String readLine()
throws java.io.IOException
readLine 在接口中 java.io.DataInputjava.io.IOExceptionpublic long readLong()
throws java.io.IOException
readLong 在接口中 java.io.DataInputjava.io.IOExceptionpublic short readShort()
throws java.io.IOException
readShort 在接口中 java.io.DataInputjava.io.IOExceptionpublic java.lang.String readUTF()
throws java.io.IOException
readUTF 在接口中 java.io.DataInputjava.io.IOExceptionpublic int readUnsignedByte()
throws java.io.IOException
readUnsignedByte 在接口中 java.io.DataInputjava.io.IOExceptionpublic int readUnsignedShort()
throws java.io.IOException
readUnsignedShort 在接口中 java.io.DataInputjava.io.IOExceptionpublic int skipBytes(int n)
throws java.io.IOException
skipBytes 在接口中 java.io.DataInputjava.io.IOException