JNI中文处理问题小结[14]

[入库:2006年2月23日] [更新:2007年3月24日]

本文简介:

        return 1;
    }


    jclass cls = env->FindClass ("jni/test/Demo");
    assert (0 != cls);

    jmethodID mid = env->GetMethodID (cls, "<init>", "(Ljava/lang/String;)V");
    assert (0 != mid);

    wchar_t
* p = L"中国";
    jobject obj = env->NewObject (cls, mid, env->NewString (reinterpret_cast<jchar*> (p), wcslen (p)));
    assert (0 != obj);

    mid = env->GetMethodID (cls, "getMessage", "()Ljava/lang/String;");
    assert (0 != mid);

    jstring str = (jstring)env->CallObjectMethod (obj, mid);

    // use JNIString for easier handling.
    JNIString jnistr (env, str);
    cout << "JNIString:" << jnistr.GetString () << endl;

    jnistr = "中文";

本文关键:JNI中文处理问题小结
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top