我可以用这个获得数据库路径和名称吗?
Paths.getDbPath();
Paths.getDbName();
我认为如果我们在应用程序中使用数据库,我们可以将它存储在assets文件夹中并重命名吗?
答案 0 :(得分:2)
我对Paths不熟悉,所以我无法回答你的问题。 但我可以告诉你如何将数据库复制到资产
DBHelper中的方法
public void exportDatabase(String destin) throws IOException {
File sourceFile = new File(getReadableDatabase().getPath());
File destinationDir = new File(Environment.getExternalStorageDirectory(), "DBNAME");
FileUtils.copyFileToDirectory(sourceFile, destinationDir);
String sourcetemp = "source.db";
String destintemp = destin + ".db";
File from = new File(destinationDir, sourcetemp);
File to = new File(destinationDir, destintemp);
try {
from.renameTo(to);
}
catch (Exception e) {
Log.e(TAG, "Rename failed", e);
}
}
希望能帮到你。
答案 1 :(得分:0)
您可以使用以下代码找到数据库路径:
if(android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.JELLY_BEAN_MR1)
{
DB_PATH = context.getApplicationInfo().dataDir + "/databases/";
}
else
{
DB_PATH = "/data/data/" + context.getPackageName() + "/databases/";
}