- >好的,这里我有SD卡中的Sq-lite数据库。
(String DB_PATH = Environment.getExternalStorageDirectory().getPath().toString();)
- >检查数据库是否存在
dbFile = new File(DB_PATH + DB_NAME );
if(dbFile.exists()== true)
{
//set text db exists
open_DB();
}
else
{
//set text db does not exist
return;
}
- >在调试我可以确认数据库文件的存在。但是在打开时 数据库我得到异常
SQLiteDatabase checkDB = null;
try
{
dbFile = new File(DB_PATH + DB_NAME);
myDataBase = SQLiteDatabase.openOrCreateDatabase(dbFile, null);
//myDataBase = SQLiteDatabase.openDatabase(DB_PATH + DB_NAME, null, 0);
//also tried this
//set text bd opened
}
catch(SQLiteException e)
{
//set text bd unable open
return;
}
答案 0 :(得分:0)
可能你的问题是由标志或文件引起的,所以试着用这个:
dbFile = new File(DB_PATH + DB_NAME);
if (dbFile.exists()) {
db = SQLiteDatabase.openDatabase(db_path, null, SQLiteDatabase.NO_LOCALIZED_COLLATORS | SQLiteDatabase.CREATE_IF_NECESSARY);
}
让我知道。