当前位置: 技术问答>java相关
通过JNI在C++中怎样处理一个jchararray.......
来源: 互联网 发布时间:2015-08-11
本文导语: JNIEXPORT void JNICALL Java_demo_aaa(JNIEnv *env, jobject,jcharArray char_array) { unsigned short *obj =env->GetCharArrayElements(char_array,0); } getchararrayelements返回的是一个unsigned short型的数组,发现用循环写出obj[i]各个元素...
JNIEXPORT void JNICALL Java_demo_aaa(JNIEnv *env, jobject,jcharArray char_array)
{
unsigned short *obj =env->GetCharArrayElements(char_array,0);
}
getchararrayelements返回的是一个unsigned short型的数组,发现用循环写出obj[i]各个元素会造成内存不可为read,最后加上env->ReleaseCharArrayElements(char_array,obj, 0)也没用,那怎样处理才能正确读出char_array的各位元素呢?
我在网上找过很多例子,大多是用GetIntArrayElements这种方法,但是在这里就不行.
char_array中有可能是中文字符也有可能是英文字符,如果是这样该怎么处理才保证没有乱码???
{
unsigned short *obj =env->GetCharArrayElements(char_array,0);
}
getchararrayelements返回的是一个unsigned short型的数组,发现用循环写出obj[i]各个元素会造成内存不可为read,最后加上env->ReleaseCharArrayElements(char_array,obj, 0)也没用,那怎样处理才能正确读出char_array的各位元素呢?
我在网上找过很多例子,大多是用GetIntArrayElements这种方法,但是在这里就不行.
char_array中有可能是中文字符也有可能是英文字符,如果是这样该怎么处理才保证没有乱码???
|
你可以看看Sun的文档会有帮助,数组不可以这么访问的。
或者等一两天,我给你个例子片断……
千万别给我分!!很重要!!别给我加分!!
或者等一两天,我给你个例子片断……
千万别给我分!!很重要!!别给我加分!!