JNI jbyteArray转char*

时间:2016-04-05 15:46:15   收藏:0   阅读:993

JNI jbyteArray转char*

char* ConvertJByteaArrayToChars(JNIEnv *env, jbyteArray bytearray)
{
  char *chars = NULL;
  jbyte *bytes;
  bytes = env->GetByteArrayElements(bytearray, 0);
  int chars_len = env->GetArrayLength(bytearray);
  chars = new char[chars_len + 1];
  memset(chars,0,chars_len + 1);
  memcpy(chars, bytes, chars_len);
  chars[chars_len] = 0;

  env->ReleaseByteArrayElements(bytearray, bytes, 0);

  return chars;
}

调用:

{

  char *pmsg = ConvertJByteaArrayToChars(env,jmsgversion);
  ...
  delete pmsg;

}

原文:http://www.cnblogs.com/fyqds/p/5354961.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!