Package com.sun.jna

# Class StringArray

java.lang.Object
com.sun.jna.Pointer
com.sun.jna.Memory
com.sun.jna.StringArray

All Implemented Interfaces:
  `Function.PostCallRead`, `Closeable`, `AutoCloseable`

public class StringArray extends Memory implements Function.PostCallRead
Handle native array of `char*` or `wchar_t*` type by managing allocation/disposal of native strings within an array of pointers. An extra NULL pointer is always added to the end of the native pointer array for convenience.

- ## Field Summary

  ### Fields inherited from class com.sun.jna.Memory

  `size`

  ### Fields inherited from class com.sun.jna.Pointer

  `NULL, peer`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `StringArray(WString[] strings)`
  Create a native array of wide strings.
  `StringArray(String[] strings)`
  Create a native array of strings.
  `StringArray(String[] strings, boolean wide)`
  Create a native array of strings.
  `StringArray(String[] strings, String encoding)`
  Create a native array of strings using the given encoding.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `read()`
  Read back from native memory.
  `String`
  `toString()`

  ### Methods inherited from class com.sun.jna.Memory

  `align, boundsCheck, clear, close, dispose, disposeAll, dump, free, getByte, getByteBuffer, getChar, getDouble, getFloat, getInt, getLong, getPointer, getShort, getString, getWideString, malloc, purge, read, read, read, read, read, read, read, read, setByte, setChar, setDouble, setFloat, setInt, setLong, setPointer, setShort, setString, setWideString, share, share, size, valid, write, write, write, write, write, write, write, write`

  ### Methods inherited from class com.sun.jna.Pointer

  `clear, createConstant, createConstant, dump, equals, getByteArray, getCharArray, getDoubleArray, getFloatArray, getIntArray, getLongArray, getNativeLong, getPointerArray, getPointerArray, getShortArray, getString, getStringArray, getStringArray, getStringArray, getStringArray, getValue, getWideStringArray, getWideStringArray, hashCode, indexOf, nativeValue, nativeValue, setMemory, setNativeLong, setString, setString, setValue`

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

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### StringArray

    public StringArray(String[] strings)
    Create a native array of strings.

  - ### StringArray

    public StringArray(String[] strings, boolean wide)
    Create a native array of strings.

  - ### StringArray

    public StringArray(String[] strings, String encoding)
    Create a native array of strings using the given encoding.

  - ### StringArray

    public StringArray(WString[] strings)
    Create a native array of wide strings.

- ## Method Details

  - ### read

    public void read()
    Read back from native memory.
    Specified by:
      `read` in interface `Function.PostCallRead`

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Memory`