Package org.apache.lucene.store

# Class ByteArrayDataInput

java.lang.Object
org.apache.lucene.store.DataInput
org.apache.lucene.store.ByteArrayDataInput

All Implemented Interfaces:
  `Cloneable`

public final class ByteArrayDataInput extends DataInput
DataInput backed by a byte array. WARNING: This class omits all low-level checks.

WARNING: This API is experimental and might change in incompatible ways in the next release.

## Constructor Summary

Constructors
Constructor
Description
`ByteArrayDataInput()`
`ByteArrayDataInput(byte[] bytes)`
`ByteArrayDataInput(byte[] bytes, int offset, int len)`

## Method Summary

Modifier and Type
Method
Description
`boolean`
`eof()`
`int`
`getPosition()`
`int`
`length()`
`byte`
`readByte()`
Reads and returns a single byte.
`void`
`readBytes(byte[] b, int offset, int len)`
Reads a specified number of bytes into an array at the specified offset.
`int`
`readInt()`
Reads four bytes and returns an int (LE byte order).
`long`
`readLong()`
Reads eight bytes and returns a long (LE byte order).
`short`
`readShort()`
Reads two bytes and returns a short (LE byte order).
`int`
`readVInt()`
Reads an int stored in variable-length format.
`long`
`readVLong()`
Reads a long stored in variable-length format.
`void`
`reset(byte[] bytes)`
`void`
`reset(byte[] bytes, int offset, int len)`
`void`
`rewind()`
`void`
`setPosition(int pos)`
`void`
`skipBytes(long count)`
Skip over `numBytes` bytes.

### Methods inherited from class org.apache.lucene.store.DataInput

`clone, readBytes, readFloats, readGroupVInt, readInts, readLongs, readMapOfStrings, readSetOfStrings, readString, readZInt, readZLong`

### Methods inherited from class java.lang.Object

`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### ByteArrayDataInput

public ByteArrayDataInput(byte[] bytes)

### ByteArrayDataInput

public ByteArrayDataInput(byte[] bytes, int offset, int len)

### ByteArrayDataInput

public ByteArrayDataInput()

## Method Details

### reset

public void reset(byte[] bytes)

### rewind

public void rewind()

### getPosition

public int getPosition()

### setPosition

public void setPosition(int pos)

### reset

public void reset(byte[] bytes, int offset, int len)

### length

public int length()

### eof

public boolean eof()

### skipBytes

public void skipBytes(long count)
Description copied from class: `DataInput`
Skip over `numBytes` bytes. This method may skip bytes in whatever way is most optimal, and may not have the same behavior as reading the skipped bytes. In general, negative `numBytes` are not supported.

Specified by:
  `skipBytes` in class `DataInput`

### readShort

public short readShort()
Description copied from class: `DataInput`
Reads two bytes and returns a short (LE byte order).

Overrides:
  `readShort` in class `DataInput`
See Also:
  - `DataOutput.writeShort(short)`
  - `BitUtil.VH_LE_SHORT`

### readInt

public int readInt()
Description copied from class: `DataInput`
Reads four bytes and returns an int (LE byte order).

Overrides:
  `readInt` in class `DataInput`
See Also:
  - `DataOutput.writeInt(int)`
  - `BitUtil.VH_LE_INT`

### readLong

public long readLong()
Description copied from class: `DataInput`
Reads eight bytes and returns a long (LE byte order).

Overrides:
  `readLong` in class `DataInput`
See Also:
  - `DataOutput.writeLong(long)`
  - `BitUtil.VH_LE_LONG`

### readVInt

public int readVInt()
Description copied from class: `DataInput`
Reads an int stored in variable-length format. Reads between one and five bytes. Smaller values take fewer bytes. Negative numbers are supported, but should be avoided.

The format is described further in `DataOutput.writeVInt(int)`.

Overrides:
  `readVInt` in class `DataInput`
See Also:
  - `DataOutput.writeVInt(int)`

### readVLong

public long readVLong()
Description copied from class: `DataInput`
Reads a long stored in variable-length format. Reads between one and nine bytes. Smaller values take fewer bytes. Negative numbers are not supported.

The format is described further in `DataOutput.writeVInt(int)`.

Overrides:
  `readVLong` in class `DataInput`
See Also:
  - `DataOutput.writeVLong(long)`

### readByte

public byte readByte()
Description copied from class: `DataInput`
Reads and returns a single byte.

Specified by:
  `readByte` in class `DataInput`
See Also:
  - `DataOutput.writeByte(byte)`

### readBytes

public void readBytes(byte[] b, int offset, int len)
Description copied from class: `DataInput`
Reads a specified number of bytes into an array at the specified offset.

Specified by:
  `readBytes` in class `DataInput`
Parameters:
  `b` - the array to read bytes into
  `offset` - the offset in the array to start storing bytes
  `len` - the number of bytes to read
See Also:
  - `DataOutput.writeBytes(byte[],int)`