zoukankan      html  css  js  c++  java
  • Android JNI ,jni基本数据类型转换

    jstring转换为c string:

    1. GetStringUTFChars将jstring转换成为UTF-8格式的char*
    2. GetStringChars将jstring转换成为Unicode格式的char*
    3. ReleaseStringUTFChars释放指向UTF-8格式的char*的指针
    4. ReleaseStringChars释放指向Unicode格式的char*的指针
    5. NewStringUTF创建一个UTF-8格式的String对象
    6. NewString创建一个Unicode格式的String对象
    7. GetStringUTFLengt获取 UTF-8格式的char*的长度
    8. GetStringLength获取Unicode格式的char*的长度

    注意:在使用完你所转换之后的对象之后,需要显示调用 ReleaseStringUTFChars方法,让JVM释放转换成UTF-8的string的对象的空间,如果不显示的调用的话,JVM中会一直保存 该对象,不会被垃圾回收器回收,因此就会导致内存溢出。

    const char *str = (*env)->GetStringUTFChars(env, prompt, 0); 
    printf("%s", str);
    (*env)->ReleaseStringUTFChars(env, prompt, str);

  • 相关阅读:
    Android访问数据库(SQL Server 和 MySQL)
    Andriod开发环境搭建
    SQL 学习记录
    安装双系统 win7 + ubuntu 15.04
    SQL资料
    电脑使用
    python_L7
    ONE
    网页性能优化
    js的继承
  • 原文地址:https://www.cnblogs.com/zhouchanwen/p/3382549.html
Copyright © 2011-2022 走看看