sách gpt4 ăn đã đi

java - 如何将 jstring 转换为 wchar_t *

In lại Tác giả: IT Lão Cao 更新时间:2023-10-28 23:11:44 41 4
mua khóa gpt4 giày nike

假设在 C++ 端,我的函数采用类型为 jstring 的变量,名为 myString。我可以将其转换为 ANSI 字符串,如下所示:

const char* ansiString = env->GetStringUTFChars(myString, 0);

有没有办法获得

const wchar_t* unicodeString = ...

câu trả lời hay nhất

如果这对某人有帮助...我已将此功能用于 Android 项目:

std::wstring Java_To_WStr(JNIEnv *env, jstring string)
{
std::wstring value;

const jchar *raw = env->GetStringChars(string, 0);
jsize len = env->GetStringLength(string);
const jchar *temp = raw;
while (len > 0)
{
value += *(temp++);
len--;
}
env->ReleaseStringChars(string, raw);

return value;
}

改进的解决方案可能是(感谢您的反馈):

std::wstring Java_To_WStr(JNIEnv *env, jstring string)
{
std::wstring value;

const jchar *raw = env->GetStringChars(string, 0);
jsize len = env->GetStringLength(string);

value.assign(raw, raw + len);

env->ReleaseStringChars(string, raw);

return value;
}

关于java - 如何将 jstring 转换为 wchar_t *,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68042/

41 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress