如何将字符串数组返回到 java JNI
How to return string array to java JNI
我想将 finalResult 数组返回给 java。任何帮助 感谢。
extern "C"
JNIEXPORT void JNICALL
Java_com_testjniproject_MainActivity_AnalyseImageDisplay(JNIEnv *env, jobject instance, jlong sourceImageArray)
{
Mat &srcInputImg = *(Mat*)sourceImageArray;
vector<tuple<string, string, int>> result = AnalyseImage(srcInputImg);
enter code here
string finalResult[3];
for (int i=0; i < result.size(); i++)
{
cout << get<0>(result[i]) << " : " << get<1>(result[i]) << " With confidence " << get<2>(result[i]) << "%" << endl;
finalResult[i] = get<1>(result[i]);
}
}
你可以这样做:
extern "C" {
JNIEXPORT jobjectArray JNICALL Java_com_testjniproject_MainActivity_AnalyseImageDisplay(
JNIEnv *env,
jobject instance,
jlong sourceImageArray) {
jobjectArray result;
result = (jobjectArray)env->NewObjectArray(3,env->FindClass("java/lang/String"),env->NewStringUTF(""));
for(int i=0; i<3; i++) {
env->SetObjectArrayElement(result,i,env->NewStringUTF(finalResult[i].c_str()));
}
return result;
}
}
相关文章:
- 如何将字符串数组返回到 java JNI
- Java JNI GDAL 本机库在重新部署为 Web 应用程序时出现类加载器错误
- 如何将字符串数组从C++返回到Java(JNI)
- C 多线程JAVA JNI方法调用
- 在Java(JNI)中与Mingw C 一起编译64位静态LIB
- 如果您以Java JNI分配的本机代码中的内存泄漏,会发生什么
- Java Jni and C++
- 使用java jni时转换字符串类型
- Java JNI JAWT 错误未解析的外部符号__imp__JAWT_GetAWT@8
- Java JNI "symbol lookup error" with c++ 库
- 一般使用 java JNI GetFieldID 和 JNI
- 如何部署一个混合的C++/Java(JNI)应用程序
- 如何以定义良好的线程安全方式将C++字符串传递给Java JNI
- Java JNI符号查找错误
- C++/Java JNI收到异常unsastifiedLinkError
- 如何查找Java + JNI + c++进程中的内存泄漏
- 是否有可能制作一个调用jdbc的Java JNI
- Java - JNI - 将UCS-2字符转换为jchar(即Java的char)
- Java JNI UnsatisfiedLinkError
- Java JNI包装工具