Как преобразовать jbyteArray в native char* в jni?

Я пытаюсь преобразовать jbyteArray в native c string (char*) в jni? К сожалению, я не могу найти никакой документации о том, как это сделать. В коде на c я вызываю java-функцию со следующим прототипом.

public static byte[] processFile(byte[] p_fileContent)

В c-коде я вызываю эту функцию, которая возвращает массив байтов. Содержимое этого массива байтов - строка java. Но мне нужно преобразовать ее в строку языка Си.

jbyteArray arr = (jbyteArray) env->CallObjectMethod(clsH, midMain, jb);
printf("%s\n", (char*) arr);
13
задан John 21 November 2013 в 07:11
поделиться