![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JNA
文章平均质量分 59
lvming-elena
这个作者很懒,什么都没留下…
展开
-
JNA编程之一:入门
自从接触Java编程以来,有个问题一直缠绕着我:怎样才能在Java中调用以前用C/C++开发的劳动成果(函数库)?于是开始百度、Google了若干下,初步发现有个叫JNI的“小伙子”,一下子把它的简介读完后,让人觉得仿佛要“围着Java打转转”的味道。对于我这个一直钟情于C语言开发的人来说,有点难以接受:“别太嚣张了,厚道点嘛,C/C++才是真正的老大啊”。于是继续搜索,幸好Java还是有点“自知转载 2015-04-08 16:54:05 · 641 阅读 · 0 评论 -
JNA编程之二:数据类型映射
以下关于C/C++及Java数据类型间的映射关系摘自JNA官网,由于笔者英语水平有限就不做翻译了,但是只要你曾经是个C/C++程序员,估计能领悟到它的具体意思。Default Type MappingsJava primitive types (and their object equivalents) map directly to the native C ty转载 2015-04-08 16:56:27 · 996 阅读 · 0 评论 -
JNA编程之三:调用自定义的C动态库并支持回调
在文章《JNA编程之一:入门》中已经介绍了如何通过JNA调用Linux系统自带的libc.so动态库的printf函数,现在再通过一个简单的例子介绍如何通过JNA调用自己编写的C动态库并在动态库中调用Java的函数(回调)。0. 备注:操作系统:Ubuntu-10.10工作用户:rootJDK版本:1.6&1.7开发环境:eclipse1. 创建C动转载 2015-04-08 16:53:09 · 2231 阅读 · 0 评论 -
JNA编程之四:直接函数映射
在JNA官网上还介绍了另外一种调用C/C++动态库的方式:直接函数(方法)映射。其编程方法非常简单,连接口定义都免了,只需在类声明中使用关键字native声明动态库的函数,然后在调用动态库的函数之前先调用Native.register方法注册(加载)动态库即可。 下面给出一个调用本地数学函数库的示例,该示例中分别调用了动态库中的cos、sin和pow进行数学计算。代码如下:转载 2015-04-08 16:56:31 · 966 阅读 · 0 评论 -
JNA调用DLL
一、前言 Jna调用的示范,基本包括了Java->C基本类型的转换,指针的转换等。 比起一直盲目搜索,第一次用JNA最好静下心看一遍,看完这篇省很多事。不过文章是2011年的,可能后面要查看下有什么改变。二、原文 http://www.viaboxxsystems.de/java-interoperation-with-a-nativ转载 2015-04-08 16:46:59 · 2972 阅读 · 3 评论