从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 -> string转换的作用。
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);
}
相关文章:
- 防止主数据类型C++的隐式转换
- 模板参数替换失败,并且未完成隐式转换
- 努力将整数转换为链表。不知道我在这里做错了什么
- HEX值到wchar_t字符(UTF-8)的转换
- lambda参数转换为constexpr技巧,然后获取带链接的数组
- 将 Qvector<uint8_t> 转换为 QString
- 如何在cuSparse中使用cusparseXcoo2csr从coo转换为csc
- 有关插入适配器的错误。[错误]请求从 'back_insert_iterator<vector<>>' 类型转换为非标量类型
- 在c++中使用nlohmann从类到json的转换
- 如何将两个 jlong 数据类型转换为 jstring,然后将两个字符串连接在一起以便从 JNI 将字符串返回给 jav
- 从 std::wstring 转换为 jstring
- 如何将 WCHAR_T* 转换为 jstring
- 将std::string转换为ndk-jstring
- 将std::string转换为使用windows-1256编码的jstring
- JNI调用将jstring转换为char*
- 将 jstring 转换为 QString
- 当使用va_arg传递char*时,在JNI中将char*转换为jstring
- 在Linux上将wstring转换为jstring
- 从basic_string到jstring的转换
- 如何将jobobject转换为jstring