android数据库通过编程复制错误

时间:2014-02-22 15:13:29

标签: android database

我有一个奇怪的问题我试图通过以下代码将数据库从资产文件夹复制到app数据库文件夹“/ data / data / YOUR_PACKAGE / databases /”。这对三星手机不适合金立手机工作正常我不知道为什么请帮忙

 private void copyDataBase() throws IOException{

    //Open your local db as the input stream
    InputStream myInput =            myContext.getAssets().open(DB_NAME);

    // Path to the just created empty db
    String outFileName = DB_PATH + DB_NAME;

    //Open the empty db as the output stream
    OutputStream myOutput = new FileOutputStream(outFileName);

    //transfer bytes from the inputfile to the outputfile
    byte[] buffer = new byte[1024];
    int length;
    while ((length = myInput.read(buffer))>0){
        myOutput.write(buffer, 0, length);
    }

    //Close the streams
    myOutput.flush();
    myOutput.close();
    myInput.close();

}

1 个答案:

答案 0 :(得分:0)

如何生成DB_PATH?也许它在金立移动设备上不可用(因为制造商修改了操作系统)。

您应该使用以下代码来确定outFileName

String outFileName = context.getDatabasePath(DB_NAME).getPath();

如果仍然引发异常,请更新您的帖子以了解更多详情。