为什么要使用sqlite.dll?
直接使用JDBC就可以访问sqlite数据库

解决方案 »

  1.   

    正面寻求的话,不妨看看这个:
    http://tvjody.iteye.com/blog/125643
      

  2.   

    我要使用别人的db,而且别人的db是经过加密的,只能调用它们封装的sqlite3.dll
      

  3.   

    在c#中可以这样声明
        public static extern int sqlite3_open(string  filename, out IntPtr db);
    可以看出  IntPtr 是一个特殊的 整形数据,所以应对与Java里面的可以用int 来应对,所以后续的工作就好做了。
    public interface JnaUseSqlite3Dll extends StdCallLibrary {
    //加载动态链接库,把库dll文件默认放到系统C盘window目录下的system32文件夹下
    JnaUseSqlite3Dll instance = (JnaUseSqlite3Dll)Native.loadLibrary("sqlite3", JnaUseSqlite3Dll.class);
    //对应动态链接库中的方法, 要注意的是 这里的方法必须要和链接库(dll文件)对应的方法名一致
    public int sqlite3_open(String filename, int db);//db 

    }
    ====================================
    /**
     * 工具类
     * @author Administrator
     *
     */
    public class Sqlite3Util {
        /**
         * 得到一个jna实例,调用dll动态链接库,
         * @return
         */
        public static JnaUseSqlite3Dll  getInstance() {
            return JnaUseSqlite3Dll.instance;
        }
        
        /**
         *
         * 
         */
        public static int sqlite3_open(String filename) {
            
    int returnNum = getInstance().sqlite3_open(filename, 0);
            return returnNum;
        }
        
        
        public static void main(String[] args) {
             String filename="xxxxx";
             Sqlite3Util.sqlite3_open(filename);
        }
    }楼主可以试试,看看这个是否对你有所帮助