java加载dll文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java加载dll文件相关的知识,希望对你有一定的参考价值。
情况,目前有一个dll文件,但是dll文件里面是数据库表,请问,java怎么读取里面的数据,谢谢
参考技术A java没法直接读,只能先用C++写一个读取该dll内容的过程,按JNI规范封装成dll,然后java加载这个dll执行其中的函数。追问现在本身就是一个dll,为什么还要再写一个呢?我用工具反编译了一下,的确此dll里面没有对应的函数什么的,C++也不会呀,请问我现在最好的处理方法是什么,谢谢!
追答因为这个dll当中的函数不是按照JNI格式封装的,所以Java无法直接加载该dll。只能通过C++写的另一个dll再进行一次封装。
参考技术B java不能直接操作DLL 用Jna你也不能直接操作DLL
你只能调用封装好的方法
一句话 你得按照DLL提供的方法取操作他追问
dll里面反编译过来没有函数,当然也有可能是我做的不正确,只晓得通过Navicat for sql可以直接加载该dll 而后就可以直接查看dll里面包含的数据。
追答你不是用的sqllite哦 不是DLL Navicat for sql加载什么DLL
追问这是真的,一开始我也不理解,但是通过工具的确加载出来了
工具就是这个Navicat for sqlite ;所以就有些搞不懂了,如果只是调用dll,晓得里面的方法的话 那还是很简单的,目前这个就是一个数据库,但是是以dll形式来的,就不晓得改怎么通过java把这个数据读取出来了。
我都说了你那个不是DLL dll是动态链接库 你那个是sqlite 数据库
结尾一班是.db 不是.dll
百度 java操作sqlite 数据库 几下就解决你的问题
和你操作mysql 那些没什么区别 只是他是一个文本数据库
就是这个文件,这就是dll的哇,直接改后缀?
你改不改后缀他都是sqlite数据库 难道你把a.txt 改成B.DLL 你打开的内容不是和a.txt 一样的么 整好了 采纳一下
本回答被提问者采纳以上是关于java加载dll文件的主要内容,如果未能解决你的问题,请参考以下文章