JNI开发中String转换chat*工具

char*   Jstring2CStr(JNIEnv*   env,   jstring   jstr)
{
     char*   rtn   =   NULL;
     jclass   clsstring   =   (*env)->FindClass(env,"java/lang/String");
     jstring   strencode   =   (*env)->NewStringUTF(env,"GB2312");
     jmethodID   mid   =   (*env)->GetMethodID(env,clsstring,   "getBytes",   "(Ljava/lang/String;)[B");
     jbyteArray   barr=   (jbyteArray)(*env)->CallObjectMethod(env,jstr,mid,strencode); // String .getByte("GB2312");
     jsize   alen   =   (*env)->GetArrayLength(env,barr);
     jbyte*   ba   =   (*env)->GetByteArrayElements(env,barr,JNI_FALSE);
     if(alen   >   0)
     {
      rtn   =   (char*)malloc(alen+1);         //"\0"
      memcpy(rtn,ba,alen);
      rtn[alen]=0;
     }
     (*env)->ReleaseByteArrayElements(env,barr,ba,0);  //
     return rtn;
}
时间: 2024-08-01 10:46:07

JNI开发中String转换chat*工具的相关文章

Java中String转换Double类型 Java小数点后留两位

Java中String转换Double类型 double num1 = 0.0; String qq = "19.987"; num1 = Double.valueOf(qq.toString()); 太祖元年 Java小数点后留两位 double num1 =11; double num1 =21; String num1 =""; DecimalFormat df = new DecimalFormat(".00");num3 = df.fo

开发中需要用的工具总结

工作中需要以下工具配合: 收件人: 抄送 主题 发件人 内容:iOStest**项目 v100版本已提交至商务 *** *** *** *** 附件: iostest.ipa foxmail WP8同城** v100版本 平台:WindowPhone 产品:同城** 版本号:1.0.0 Vercode:50 渠道号:10000 主要功能: 1 私信 2 资料 3 头像 其他 svn地址 svn://192.168.1.11/ 于版本: 22456 编辑版本:arm/debug confluenc

开发中的代码管理工具梳理

参考:https://blog.csdn.net/growing_tree/article/details/44084179 参考:https://blog.csdn.net/zhhelnice/article/details/52385285 参考:https://blog.csdn.net/growing_tree/article/details/44084179 代码管理工具有很多,看了很多文章,有必要梳理一下. 一.为什么使用代码管理工具? 就像zhhelnice的博客在博客里总结的那样

Postgresql中string转换成timestamp类型

Mybatis+Postgresql TO_DATE(#{startTime}, 'YYYY-MM-DD') AND op_date <![CDATA[>= ]]>  TO_TIMESTAMP(#{beginTime}, 'YYYY-MM-DD HH24:MI:SS')    AND op_date <![CDATA[<= ]]>  TO_TIMESTAMP(#{endTime}, 'YYYY-MM-DD HH24:MI:SS') SpringMVC+Spring 而页

jni开发中的常见错误

* java.lang.UnsatisfiedLinkError: Native method not found: 本地方法没有找到 * 本地函数名写错 * 忘记加载.so文件 没有调用System.loadlibrary * findLibrary returned null * System.loadLibrary("libhello"); 加载动态链接库时 动态链接库名字写错 * 平台类型错误 把只支持arm平台的.so文件部署到了 x86cpu的设备上 * 在jni目录下创建

NO.4 Android开发中常用框架及工具

android-pulltorefresh 一个强大的拉动刷新开源项目,支持各种控件下拉刷新ListView.ViewPager.WevView.ExpandableListView.GridView.(Horizontal)ScrollView.Fragment 上下左右拉动刷新,比johannilsson那个只支持ListView的强大的多.并且他实现的下拉刷新ListView在item不足一屏情况下也不会显示刷新提示,体验更好.项目地址:https://github.com/chrisba

开发中一些实用的工具网址

1.标你妹啊 http://www.biaonimeia.com/ 2.熊猫压缩 https://tinypng.com/ 3.颜色识别 颜色识别器 http://www.color-hex.com/ 配色网 http://www.peise.net/ 4.变量命名神器 http://unbug.github.io/codelf/ 5.轻松玩转pdf http://smallpdf.com/cn 6.emmet(原zen coding) http://docs.emmet.io/cheat-sh

17个提升iOS开发效率的必用工具

时间就是金钱.编码效率的提升意味着更多的收入.可是当我们的开发技巧已经到达一定高度时,如何让开发效率更上一层楼呢?答案就是使用开发工具!在这篇文章中,我会向你介绍一些帮助我们提升编码速度和工作效率的工具. Xcode插件 几乎所有开发者都知道Alcatraz是一个开源的包管理工具,可以让我们更轻松地管理各种插件.接下来就介绍下我的最推荐的10个插件: 10.HOStringSense 在编辑字符串的时候,它会在代码上方生成一个字数统计的提示框.当你需要编辑多行文本时,可以在弹出的文本框中编辑字符

Java 数据类型在实际开发中应用

在前边的博文中,我已经介绍了Java核心的容器IO等,现在我来说一下java中的数据类型.在java中,一切东西皆为对象(这句话意思是java中绝大数情况都用对象),极少数不是对象的,也存在与之对应的对象(比如基本数据类型存在与之对应的包装类,数组有List对象可以代替) Java中数据类型 主要有“基本数据类型”.“String”.“引用类型” (基本的引用类型不多做介绍,在下一篇博文中着重介绍“枚举”,也算是引用类型的一种) 一:基本数据类型 1.1基本数据类型的定义 byte.char.i