Package org.apache.lucene.store

# Class ByteArrayDataOutput

java.lang.Object
org.apache.lucene.store.DataOutput
org.apache.lucene.store.ByteArrayDataOutput

public class ByteArrayDataOutput extends DataOutput
DataOutput backed by a byte array. WARNING: This class omits most low-level checks, so be sure to test heavily with assertions enabled.

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

## Constructor Summary

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

## Method Summary

Modifier and Type
Method
Description
`int`
`getPosition()`
`void`
`reset(byte[] bytes)`
`void`
`reset(byte[] bytes, int offset, int len)`
`void`
`writeByte(byte b)`
Writes a single byte.
`void`
`writeBytes(byte[] b, int offset, int length)`
Writes an array of bytes.
`void`
`writeInt(int i)`
Writes an int as four bytes (LE byte order).
`void`
`writeLong(long i)`
Writes a long as eight bytes (LE byte order).
`void`
`writeShort(short i)`
Writes a short as two bytes (LE byte order).

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

`copyBytes, writeBytes, writeGroupVInts, writeMapOfStrings, writeSetOfStrings, writeString, writeVInt, writeVLong, writeZInt, writeZLong`

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

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

## Constructor Details

### ByteArrayDataOutput

public ByteArrayDataOutput(byte[] bytes)

### ByteArrayDataOutput

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

### ByteArrayDataOutput

public ByteArrayDataOutput()

## Method Details

### reset

public void reset(byte[] bytes)

### reset

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

### getPosition

public int getPosition()

### writeByte

public void writeByte(byte b)
Description copied from class: `DataOutput`
Writes a single byte.

The most primitive data type is an eight-bit byte. Files are accessed as sequences of bytes. All other data types are defined as sequences of bytes, so file formats are byte-order independent.

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

### writeBytes

public void writeBytes(byte[] b, int offset, int length)
Description copied from class: `DataOutput`
Writes an array of bytes.

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

### writeShort

public void writeShort(short i)
Description copied from class: `DataOutput`
Writes a short as two bytes (LE byte order).

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

### writeInt

public void writeInt(int i)
Description copied from class: `DataOutput`
Writes an int as four bytes (LE byte order).

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

### writeLong

public void writeLong(long i)
Description copied from class: `DataOutput`
Writes a long as eight bytes (LE byte order).

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