|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.io.InputStream
it.unimi.dsi.fastutil.io.MeasurableInputStream
it.unimi.dsi.fastutil.io.FastByteArrayInputStream
public class FastByteArrayInputStream
Simple, fast and repositionable byte-array input stream.
Warning: this class implements the correct semantics
of read(byte[], int, int)
as described in InputStream
.
The implementation given in ByteArrayInputStream
is broken,
but it will never be fixed because it's too late.
Field Summary | |
---|---|
byte[] |
array
The array backing the input stream. |
int |
length
The number of valid bytes in array starting from offset . |
int |
offset
The first valid entry. |
Constructor Summary | |
---|---|
FastByteArrayInputStream(byte[] array)
Creates a new array input stream using a given array. |
|
FastByteArrayInputStream(byte[] array,
int offset,
int length)
Creates a new array input stream using a given array fragment. |
Method Summary | |
---|---|
int |
available()
|
void |
close()
Closing a fast byte array input stream has no effect. |
long |
length()
Returns the overall length of this input stream (optional operation). |
void |
mark(int dummy)
|
boolean |
markSupported()
|
long |
position()
Returns the current position in this input stream (optional operation). |
void |
position(long newPosition)
Sets the current stream position. |
int |
read()
|
int |
read(byte[] b,
int offset,
int length)
Reads bytes from this byte-array input stream as specified in InputStream.read(byte[], int, int) . |
void |
reset()
|
long |
skip(long n)
|
Methods inherited from class java.io.InputStream |
---|
read |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public byte[] array
public int offset
public int length
array
starting from offset
.
Constructor Detail |
---|
public FastByteArrayInputStream(byte[] array, int offset, int length)
array
- the backing array.offset
- the first valid entry of the array.length
- the number of valid bytes.public FastByteArrayInputStream(byte[] array)
array
- the backing array.Method Detail |
---|
public boolean markSupported()
markSupported
in class InputStream
public void reset()
reset
in class InputStream
public void close()
close
in interface Closeable
close
in class InputStream
public void mark(int dummy)
mark
in class InputStream
public int available()
available
in class InputStream
public long skip(long n)
skip
in class InputStream
public int read()
read
in class InputStream
public int read(byte[] b, int offset, int length)
InputStream.read(byte[], int, int)
.
Note that the implementation given in ByteArrayInputStream.read(byte[], int, int)
will return -1 on a zero-length read at EOF, contrarily to the specification. We won't.
read
in class InputStream
public long position()
MeasurableInputStream
Usually, the position is just the number of bytes read
since the stream was opened, but in the case of a
RepositionableStream
it
represent the current position.
position
in interface RepositionableStream
position
in class MeasurableInputStream
public void position(long newPosition)
RepositionableStream
position
in interface RepositionableStream
newPosition
- the new stream position.public long length()
MeasurableInputStream
length
in class MeasurableInputStream
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |