从 std::wstring 转换为 jstring
convert to jstring from std::wstring
我正在尝试将 wstring 从我的 cpp 代码转换为 jstring。
我知道有一个名为 NewStringUTF 的方法可以从 std::string 获取 jstring(当然是在从该字符串中获取 const char* 之后)。
如果输入是 std::wstring 而不使用 iconv,有没有办法做同样的事情?
JNI 有 NewString(JNIEnv * , const jchar * , jsize) 函数。如果您的std::wstring::c_str()
返回与jchar*兼容的指针(这取决于您的平台),则可以尝试使用此函数。请注意,如果您的wchar_t是 32 位(如在 Linux 上),则不能直接使用它。请参阅Android JNI - 将jstring 转换为 wchar_t 的可靠方法和如何将 jstring 转换为 wchar_t *了解更多信息。
简单的形式是将 std::wstring 转换为 std::string 以使用 NewStringUTF。
在这里,您有一个带有转换的线程 如何将 wstring 转换为字符串?
相关文章:
- 防止主数据类型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