如何用BSTR填写jobjectArray?

时间:2012-01-05 12:27:40

标签: c++ java-native-interface

我需要用BSTRs(C ++端)填充jobjectArray(实际上是java端的jstring数组)。我无法将BSTR转换为jobject。 提前感谢您的帮助

1 个答案:

答案 0 :(得分:2)

从文档和jni.h文件中猜测:

jstring theJavaString = jnienv->NewString(bstr, SysStringLen(bstr));
jnienv->SetObjectArrayElement(theArray, i, theJavaString);

NewString接受Unicode字符(BSTR已经存在)和字符串长度。 (我认为有一个BSTR长度的宏只评估bstr[-1]你可以使用而不是API调用,但我找不到它。)