我需要用 BSTR(C++ 端)填充 jobjectArray(实际上是 java 端的 jstring 数组)。我无法将 BSTR 转换为 jobject。 提前感谢您的帮助
最佳答案
根据文档和jni.h文件猜测:
jstring theJavaString = jnienv->NewString(bstr, SysStringLen(bstr));
jnienv->SetObjectArrayElement(theArray, i, theJavaString);
NewString 接受 Unicode 字符(BSTR 已经是)和字符串长度。 (我认为有一个用于 BSTR 长度的宏,它刚刚评估了 bstr[-1]
,您可以使用它来代替 API 调用,但我找不到它。)
关于c++ - 如何用BSTR填充jobjectArray?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8742482/