DB SQLite Android中出现错误
我有一个问题,应付我的DB到我的APK 我找到了这段代码,我正在使用它,但这给了我一个错误:DB SQLite Android中出现错误,android,sqlite,Android,Sqlite,我有一个问题,应付我的DB到我的APK 我找到了这段代码,我正在使用它,但这给了我一个错误: Toast.makeText(getApplicationContext(), "Archivo no encontrado.", Toast.LENGTH_SHORT).show();//FILE DOESNT FOUND 这是代码 private void copiarBaseDatos() { String ruta = "/data/data/com.example.bbay/data
Toast.makeText(getApplicationContext(), "Archivo no encontrado.", Toast.LENGTH_SHORT).show();//FILE DOESNT FOUND
这是代码
private void copiarBaseDatos() {
String ruta = "/data/data/com.example.bbay/databases/";
String archivo = "DBBay";
File archivoDB = new File(ruta + archivo);
if (!archivoDB.exists())
{
try
{
InputStream IS = getApplicationContext().getAssets().open(archivo);
OutputStream OS = new FileOutputStream(archivoDB);
byte[] buffer = new byte[1024];
int length = 0;
while ((length = IS.read(buffer))>0)
{
OS.write(buffer, 0, length);
}
OS.flush();
OS.close();
IS.close();
}
catch(FileNotFoundException e)
{
Toast.makeText(getApplicationContext(), "Archivo no encontrado.", Toast.LENGTH_SHORT).show();//FILE DOESNT FOUND
}
catch (IOException e) {
Toast.makeText(getApplicationContext(), "Error al copiar la Base de Datos.", Toast.LENGTH_SHORT).show();
}
}
}
任何帮助都会来的,谢谢。试试看
this.getApplicationContext
首先,您硬编码了应用程序私有数据目录的路径。您不应该这样做,而是应该查看此文档页:--问题的原因可能是目录结构
/data/data/com.example.bbay/databases/
尚不存在。首先尝试使用File
的mkdirs
方法创建这些目录。这解决了我的问题,比您。。。我首先用makedir()创建了文件夹,它可以工作:)最好还说,他应该在哪里试一试。以及他所期待的。为什么。