zoukankan      html  css  js  c++  java
  • 将Asset中的数据库文件拷贝出来使用

    设置保存路径

    private final static String DATABASE_PATH 
        = "/data"+ Environment.getDataDirectory().getAbsolutePath()+"/"+PACKAGE_NAME+"/database";

    拷贝文件

    public synchronized void  init(final Context context, final InitCallback callback){
            new Thread(new Runnable() {
                @Override
                public void run() {
                    String databaseFilename = DATABASE_PATH + "/address.db";
                    File dir = new File(DATABASE_PATH);
                    LogW.out(DATABASE_PATH);
                    if (!dir.exists())
                        dir.mkdir();
                    if (!(new File(databaseFilename)).exists()) {
                        try {
    //                InputStream is = context.getResources().openRawResource(R.raw.address);
                            InputStream is = context.getResources().getAssets().open("address.db");
                            FileOutputStream fos = new FileOutputStream(databaseFilename);
                            byte[] buffer = new byte[2048];
                            int i = 0;
                            while ((i = is.read(buffer)) > 0) {
                                fos.write(buffer, 0, i);
                            }
                            fos.flush();
                            fos.close();
                            is.close();
                        } catch (IOException e) {
                            new File(databaseFilename).delete();
                            db = null;
                            callback.onError(e);
                            return;
                        }
                    }
                    db = SQLiteDatabase.openOrCreateDatabase(databaseFilename, null);
                    callback.onSucess();
                }
            }).run();
        }
  • 相关阅读:
    java数据库连接池proxool介绍及mysql8小时断开连接问题的说明
    golang 做了个mutex与atomic性能测试
    Pcre 安装
    go err
    go if switch range
    Nginx 处理Http请求头部流程
    go 指针
    golang struct、interface详解
    go slice详解
    Linux基础
  • 原文地址:https://www.cnblogs.com/wenhui92/p/6242644.html
Copyright © 2011-2022 走看看