org.apache.lucene.store

## Class GrowableByteArrayDataOutput

- java.lang.Object
- - org.apache.lucene.store.DataOutput
  - - org.apache.lucene.store.GrowableByteArrayDataOutput

    public final class GrowableByteArrayDataOutput
    extends DataOutput

A `DataOutput` that can be used to build a byte[].

NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

### Constructor Summary

Constructors
Constructor and Description
`GrowableByteArrayDataOutput(int cp)` Create a `GrowableByteArrayDataOutput` with the given initial capacity.

### Method Summary

All Methods Instance Methods Concrete Methods
`byte[]` `getBytes()`
`int` `getPosition()`
`void` `reset()`
`void` `writeByte(byte b)` Writes a single byte.
`void` `writeBytes(byte[] b, int off, int len)` Writes an array of bytes.
`void` `writeString(String string)` Writes a string.

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

`copyBytes, writeBytes, writeInt, writeLong, writeMapOfStrings, writeSetOfStrings, writeShort, writeVInt, writeVLong, writeZInt, writeZLong`

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

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

### Constructor Detail

#### GrowableByteArrayDataOutput

    public GrowableByteArrayDataOutput(int cp)

Create a `GrowableByteArrayDataOutput` with the given initial capacity.

### Method Detail

#### 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 off,
                           int len)

Description copied from class: `DataOutput`
Writes an array of bytes.

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

#### writeString

    public void writeString(String string)
                     throws IOException

Description copied from class: `DataOutput`
Writes a string.

Writes strings as UTF-8 encoded bytes. First the length, in bytes, is written as a `VInt`, followed by the bytes.

Overrides:
  `writeString` in class `DataOutput`
Throws:
  `IOException`
See Also:
  `DataInput.readString()`

#### getBytes

    public byte[] getBytes()

#### getPosition

    public int getPosition()

#### reset

    public void reset()