jni char*转换成jstring时报Ljava/lang/ClassNotFoundException的错误

yang_elbert 2011-07-04 11:02:32
在jni 使用中,需要把一个char*类型的转成jstring类型,我用了如下方法:

jstring stoJstring(JNIEnv* env, const char* pat)
{
jclass strClass = env->FindClass("Ljava/lang/String;");
jmethodID ctorID = env->GetMethodID(strClass, "<init>", "([BLjava/lang/String;)V");
jbyteArray bytes = env->NewByteArray(strlen(pat));
env->SetByteArrayRegion(bytes, 0, strlen(pat), (jbyte*)pat);
jstring encoding = env->NewStringUTF("utf-8");
return (jstring)env->NewObject(strClass, ctorID, bytes, encoding);
}

可是在C++中调用到这个方法的时候,java中显示报错:
Caused by :
Ljava/lang/ClassNotFoundException;: Ljava.lang.String; in loader dalvik.system.PathClassLoader@43d0b768
不懂为什么,是不是需要什么头文件,或是工程中要导入什么包啊?
各位,帮忙看一下了啦...
...全文
343 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
pengzhuo2008 2012-11-06
  • 打赏
  • 举报
回复
帮顶, 求高手解决!!!
17浪子 2012-07-20
  • 打赏
  • 举报
回复
也碰到了这个问题,楼主怎么解决的

80,362

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧