`

C++和JNI的数据转换(3)

阅读更多

Java 测试native代码
这没有什么多说的,看代码吧

//主测试程序
    public static void main(String[] args) {
        ChangeMethodFromJni changeJni 
= new ChangeMethodFromJni();

        
//输入常用的数值类型(string int boolean)
        System.out
                .println(
"------------------输入常用的数值类型(string int boolean)-----------");
        changeJni.displayParms(
"Hello World!"100true);

        
//调用一个静态方法
        System.out.println("------------------调用一个静态方法-----------");
        
int ret = changeJni.add(1220);
        System.
out.println("The result is: " + String.valueOf(ret));

        
//输入一个数组
        System.out.println("------------------输入一个数组-----------");
        boolean[] blList 
= new boolean[] truefalsetrue };
        changeJni.setArray(blList);

        
//返回一个字符串数组
        System.out.println("------------------返回一个字符串数组-----------");
        String[] strList 
= changeJni.getStringArray();
        
for (int i = 0; i < strList.length; i++{
            System.
out.print(strList[i]);
        }

        System.
out.println();

        System.
out.println("------------------返回一个结构-----------");

        
//返回一个结构
        DiskInfo disk = changeJni.getStruct();
        System.
out.println("name:" + disk.name);
        System.
out.println("Serial:" + disk.serial);

        
//返回一个结构数组

        System.
out.println("------------------返回一个结构数组 -----------");
        DiskInfo[] diskList 
= changeJni.getStructArray();
        
for (int i = 0; i < diskList.length; i++{
            System.
out.println("name:" + diskList[i].name);
            System.
out.println("Serial:" + diskList[i].serial);
        }


    }


注:本程序在VS2003,eclipse (jse5.0) winxp sp2编译通过

<script type="text/javascript"></script>

分享到:
评论

相关推荐

    java jni c++ 类型转换

    java jni 与 c++ 数据类型转换 及调用

    Jni 项目 包含各种数据类型转换

    通过jni 用java调用c/c++ 编译的 dll 动态库 帖子地址 https://blog.csdn.net/qq_38777624/article/details/114625668

    java与c++交互(JNI学习笔记)

    1.C++与java交互基本介绍 2.C++获取java属性值、设置java属性值 3.C++创建java对象 4.C++中数据类型间的转换

    JNI完全技术手册 带完整书签

    Chap7:Jni中C++和Java的参数传递... 33 Chap8:如何将java传递过来的jbyteArray转换成C/C++中的BYTE数组... 47 Chap5:使用JNI技术实现java程序调用第三方dll(c/c++)文件的功能... 47 Chap9:如何编写jni方法(转载...

    JNI技术手册 c/c++调用java

    2) 如何将java传入的String参数转换为c的char*,然后使用? 57 3) 将c中获取的一个char*的buffer传递给java? 57 4) 不知道占用多少空间的buffer,如何传递出去呢? 58 五、 对JAVA传入数据的处理 58 1) 如果传入的是...

    JNI技术相关的三个Demo

    三个Demo分别演示了Java调用C/C++;C/C++调用Java;JNI技术数据类型转换和访问相关的技术。希望对初学者有帮助。

    C_Java_Transfer.zip

    通过JNI实现CC++中结构体和Java类之间的数据转换,该代码列举了两种常见的方法,学会了这两种方法,妈妈再也不要为我担心了。

    Android将camera获取到的YuvData在jni中转化为Mat方法

    为了达到实时处理的目的,很多时候我们将得到的yuv数据直接传入jni中的c++使用,减少上层转化图像格式的过程yuv420本身属于单通道图像,若图像处理中只需要获取灰度图像,可以在c++中直接通过Mat构造函数构造生成...

    Cocos2d-x与Android交互(c++与java互调),与IOS交互(c++与objective c混编)

    Cocos2d-x与Android交互(c++与java互调),与IOS交互(c++与objective c混编) 具体的代码请下载这个文件,里面有更详细的jni使用方法,包括传递基本数据类型,返回基本数据类型的值,及类型的转换。

    jni编译zinnia手写识别库

    zinnia是一个开源的手写识别库。采用C++实现。具有手写识别,学习以及文字模型数据制作转换等功能。

    基于OpenCV传统图像处理实现的美颜算法相机C源码+sln及说明(可美白和磨皮).zip

    4. 提供C++、纯C、JNI接口 5. 特点:高性能,算法本身就是基于yuv的原地操作。没有与rgb的转换和内存的拷贝。 二. 算法流程 1. 计算和与平方和的积分图 2. 局部均方差滤波 + 美白 + 皮肤检测 3. 锐化均方差滤波...

    ICTCLAS50_Windows_32_C

     ICTCLAS 2011 c/c++/c#版、JNI版均支持多线程调用。 3、支持UTF-8  以往版本需要进行编码转换,统一转换成GB2312之后才能做进一步处理。系统当前版本支持GB2312、GBK、GB18030、UTF-8、BIG5。以上编码无需做任何...

    vc++6.0 程序设计学与用教程

    3.7 各类型数据间的优先关系和相互转换 第4章 运算符与表达式 4.1 算术运算符 4.2 关系运算符 4.3 布尔逻辑运算符 4.4 位运算符 4.5 赋值运算符 4.6 字符串运算符 4.7 扩展赋值运算符 4.8 条件运算符 ...

    JRTE:适用于 Android 和 CFW PS3 系统的 Java 实时修改

    JRTE - Java 实时编辑 [Android 和 CFW PS3 系统的 Java 实时修改] 这是针对 Java 实时模组的开发。 将 PS3 上的实时修改应用到便携式设备,例如 ... 需要做什么:Java 到 C++ 数据类型和 Visa-Versa 的 JNI 转换

    Thinking in Java 中文第四版+习题答案

    13.16.3 用Java 1.1 AWT制作窗口和程序片 13.16.4 再探早期示例 13.16.5 动态绑定事件 13.16.6 将商业逻辑与UI逻辑区分开 13.16.7 推荐编码方法 13.17.1 桌面颜色 13.17.2 打印 13.17.3 剪贴板 13.18 可视编程和 ...

    javabiginteger源码-quickandroid:适用于Android的QML主题和组件库

    数据类型之间的自动转换。 无需在 JNI 中编写。 主题/风格引擎 一个全局主题对象。 为所有组件设置一次。 帮助函数来创建您自己的派生样式。 “Apache 许可证” - 免费用于商业应用 系统要求 Qt 5.4 或以上 用户界面...

    【文献综述】基于JAVA的俄罗斯方块游戏设计与实现.pdf

    甲骨文公司对于 Java 的许可是"全兼容的" ,这也导致了微软和升阳关于微软的程序不 支持 RMI 和 JNI 接口、并且增加特性为己所用的法律争端。升阳最终赢得了官司,获得了大 约两千万美元的赔偿,法院强制要求微软...

    深入理解Android:卷I--详细书签版

    2.4.2 数据类型转换 22 2.4.3 JNIEnv介绍 24 2.4.4 通过JNIEnv操作jobject 25 2.4.5 jstring介绍 27 2.4.6 JNI类型签名介绍 28 2.4.7 垃圾回收 29 2.4.8 JNI中的异常处理 32 2.5 本章小结 32 第3章 深入理解...

    Think in Java(中文版)chm格式

    13.16.3 用Java 1.1 AWT制作窗口和程序片 13.16.4 再探早期示例 13.16.5 动态绑定事件 13.16.6 将商业逻辑与UI逻辑区分开 13.16.7 推荐编码方法 13.17 Java 1.1 UI API 13.17.1 桌面颜色 13.17.2 打印 13.17...

    Java初学者入门教学

    13.16.3 用Java 1.1 AWT制作窗口和程序片 13.16.4 再探早期示例 13.16.5 动态绑定事件 13.16.6 将商业逻辑与UI逻辑区分开 13.16.7 推荐编码方法 13.17 Java 1.1 UI API 13.17.1 桌面颜色 13.17.2 打印 13.17.3 剪贴...

Global site tag (gtag.js) - Google Analytics