繁体   English   中英

从basic_string转换为jstring

[英]Conversion from basic_string to jstring

我正在使用basic_string<wchar_t>类型,需要将其转换为jstring以通过JNI层。 我想知道最好的办法是什么。 我有一个函数,可以从我的basic_string<wchar_t>类型给我一个std::string ,所以答案也很酷。

干杯。

您需要将std :: basic_string转换为UTF-8。 看看你的wstring - >字符串转换是做什么的。

Sun有一个JNI教程,展示了如何将char *转换为jstring(使用一些UTF转换例程)。 你可以使用你的wstring-> string,然后将string.c_str()传递给NewStringUTF函数:

未经测试的代码:

JNIEXPORT jstring JNICALL StringTest(JNIEnv *env) {
    const char* test = "something";
    return env->NewStringUTF(test);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM