ByteBufferDataInputStream class
A wrapper around a List
See also DataInputStream
Constructors
-
ByteBufferDataInputStream(List<
int> source, [Endian endian = Endian.big]) -
Create a stream that takes its data from source with the given
initial
endian
setting. Choose Endian.big for interoperability withjava.io.DataInputStream
. - ByteBufferDataInputStream.copy(ByteBufferDataInputStream other)
-
Create a copy of ths input stream with the same underlying data
as
other
at the same position.
Properties
- bytesAvailable → int
-
Returns the number of bytes that can be read from the internal buffer.
If we're at EOF, returns zero, otherwise, returns a non-zero positive
integer.
no setter
- endian ↔ Endian
-
The current endian setting, either Endian.big or Endian.little.
This is used for converting numeric types. Choose Endian.big
for interoperability with
java.io.DataInputStream
.getter/setter pair - hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- seek ↔ int
-
The seek position within the buffer, in bytes from the start
getter/setter pair
Methods
-
close(
) → void - Render this stream un-readalbe. This positions the stream to EOF.
-
isEOF(
) → bool - Check if we're at end of file.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
read(
) → int - Returns the next unsigned byte, or -1 on EOF
-
readBoolean(
) → bool -
Reads a byte, and returns
false
if it is 0,true
otherwise. -
readByte(
) → int -
Reads a signed byte. Returns an
int
between -128 and 127, inclusive. See also readUnsignedByte. -
readBytes(
int num) → Uint8List - Returns a new, mutable Uint8List containing the desired number of bytes.
-
readBytesImmutable(
int num) → Uint8List - Returns a potentially immutable Uint8List containing the desired number of bytes. If the returned list is mutable, changing it might write through our internal buffer.
-
readDouble(
) → double - Reads and returns an 8-byte double, using the current endian setting.
-
readFloat(
) → double - Reads and returns a 4-byte float, using the current endian setting.
-
readInt(
) → int - Reads and returns a 4-byte signed integer decoded with the current endian setting.
-
readLong(
) → int - Reads and returns an 8-byte signed integer decoded with the current endian setting.
-
readShort(
) → int - Reads and returns a 2-byte signed integer decoded with the current endian setting.
-
readUnsignedByte(
) → int - Reads and returns an unsigned byte.
-
readUnsignedInt(
) → int - Reads and returns a 4-byte unsigned integer decoded with the current endian setting.
-
readUnsignedLong(
) → int - Reads and returns an 8-byte unsigned integer, converted to a Dart int according to the semantics of ByteData.getUint64 using the current endian setting.
-
readUnsignedShort(
) → int - Reads and returns a 2-byte unsigned integer decoded with the current endian setting.
-
readUTF8(
) → String -
Reads a string encoded in UTF8. This method first reads a 2 byte
unsigned integer decoded with the current endian setting,
giving the number of UTF8 bytes to read. It then reads
those bytes, and converts them to a string using Dart's UTF8 conversion.
This may be incompatible with
java.io.DataOutputStream
for a string that contains nulls. -
remaining(
) → Uint8List - Give the remaining data in a list that is a view on the underlying buffer
-
remainingCopy(
) → Uint8List - Returns a new, mutable Uint8List containing the remaining data
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited