类型映射:JNA 中的 wchar_t*& 和 char*&

Mapping of types: wchar_t*& and char*& in JNA

我的客户给了我几个函数的 dll。其中两个如下:

int     getText(void* page, wchar_t*& pTextOut);
int     getTextJson(void* page, char*& jsonData);

我正在使用 JNA,我想在我的界面中编写等效的 Java 方法:

int getText(Pointer pdfPage, ?? textOutput);
int getTextJson(Pointer pdfPage, ?? jsonData);

可惜以下returns垃圾

    Pointer outputTextPointer = outputText.getPointer();
    String outputStre = outputTextPointer.getString(0, "UTF-8");

以下returns和IndexOutOfBoundsException

    Pointer outputTextPointer = outputText.getPointer();
    String outputStre = outputTextPointer.getStringArray(0);

谁能推荐正确的 java class 来映射类型 wchar_t*& 和 char*& 或者如何正确获取数据?

谢谢 达米安

以下映射对我来说工作正常

int getText(Pointer page, PointerByReference pTextOut);
int getTextJson(Pointer page, PointerByReference jsonData);

然后我使用以下方法获取数据

PointerByReference pTextOut = new PointerByReference();
getText(page, pTextOut);
System.out.println(pTextOut.getValue().getWideString(0));