## org.apache.lucene.analysis.tokenattributes
Interface CharTermAttribute

All Superinterfaces:
  Appendable, Attribute, CharSequence

All Known Implementing Classes:
  CharTermAttributeImpl, TermAttributeImpl, Token

    public interface CharTermAttribute

extends Attribute, CharSequence, Appendable

The term text of a Token.

Method Summary
`CharTermAttribute` `append(char c)`
`CharTermAttribute` `append(CharSequence csq)`
`CharTermAttribute` `append(CharSequence csq, int start, int end)`
`CharTermAttribute` `append(CharTermAttribute termAtt)` Appends the contents of the other `CharTermAttribute` to this character sequence.
`CharTermAttribute` `append(String s)` Appends the specified `String` to this character sequence.
`CharTermAttribute` `append(StringBuilder sb)` Appends the specified `StringBuilder` to this character sequence.
`char[]` `buffer()` Returns the internal termBuffer character array which you can then directly alter.
`void` `copyBuffer(char[] buffer, int offset, int length)` Copies the contents of buffer, starting at offset for length characters, into the termBuffer array.
`char[]` `resizeBuffer(int newSize)` Grows the termBuffer to at least size newSize, preserving the existing content.
`CharTermAttribute` `setEmpty()` Sets the length of the termBuffer to zero.
`CharTermAttribute` `setLength(int length)` Set number of valid characters (length of the term) in the termBuffer array.

Methods inherited from interface java.lang.CharSequence
`charAt, length, subSequence, toString`

Method Detail

### copyBuffer

    void copyBuffer(char[] buffer,
                    int offset,
                    int length)

  Copies the contents of buffer, starting at offset for length characters, into the termBuffer array.

  Parameters:
    `buffer` - the buffer to copy
    `offset` - the index in the buffer of the first character to copy
    `length` - the number of characters to copy

### buffer

    char[] buffer()

  Returns the internal termBuffer character array which you can then directly alter. If the array is too small for your token, use `resizeBuffer(int)` to increase it. After altering the buffer be sure to call `setLength(int)` to record the number of valid characters that were placed into the termBuffer.

### resizeBuffer

    char[] resizeBuffer(int newSize)

  Grows the termBuffer to at least size newSize, preserving the existing content.

  Parameters:
    `newSize` - minimum size of the new termBuffer
  Returns:
    newly created termBuffer with length >= newSize

### setLength

    CharTermAttribute setLength(int length)

  Set number of valid characters (length of the term) in the termBuffer array. Use this to truncate the termBuffer or to synchronize with external manipulation of the termBuffer. Note: to grow the size of the array, use `resizeBuffer(int)` first.

  Parameters:
    `length` - the truncated length

### setEmpty

    CharTermAttribute setEmpty()

  Sets the length of the termBuffer to zero. Use this method before appending contents using the `Appendable` interface.

### append

    CharTermAttribute append(CharSequence csq)

  Specified by:
    `append` in interface `Appendable`

### append

    CharTermAttribute append(CharSequence csq,
                             int start,
                             int end)

  Specified by:
    `append` in interface `Appendable`

### append

    CharTermAttribute append(char c)

  Specified by:
    `append` in interface `Appendable`

### append

    CharTermAttribute append(String s)

  Appends the specified `String` to this character sequence.

  The characters of the `String` argument are appended, in order, increasing the length of this sequence by the length of the argument. If argument is `null`, then the four characters `"null"` are appended.

### append

    CharTermAttribute append(StringBuilder sb)

  Appends the specified `StringBuilder` to this character sequence.

  The characters of the `StringBuilder` argument are appended, in order, increasing the length of this sequence by the length of the argument. If argument is `null`, then the four characters `"null"` are appended.

### append

    CharTermAttribute append(CharTermAttribute termAtt)

  Appends the contents of the other `CharTermAttribute` to this character sequence.

  The characters of the `CharTermAttribute` argument are appended, in order, increasing the length of this sequence by the length of the argument. If argument is `null`, then the four characters `"null"` are appended.