2011-05-19 101 views
0

訪問android sqlite數據庫時出現奇怪的問題。我有一行代碼打開應該打開數據庫文件,但它顯示一個空指針異常作爲IOException。Android SQLite數據庫IO錯誤

SQLiteDatabase myDB = this.openOrCreateDatabase("PasswordManager", MODE_PRIVATE, null); 

這不是在一個activity類中,這只是在一個標準的java類中。我知道數據庫存在,因爲我在代碼的其他部分使用相同的行,唯一的區別是,其他地方在擴展活動的類中。

感謝您提供任何幫助。

回答

2

將來自調用Activity的上下文引用傳遞給該Java類並將其用於連接到您的數據庫。

+2

擴大Haphazard的答案。 openOrCreateDatabase()是Context類的一個方法。你不能用「this」來調用它,除非你是從Activity(Context)類來做的。將你的Context傳遞給你的其他類並用它調用openOrCreateDatabase()。 – Maximus 2011-05-19 17:26:22

+0

感謝你們倆。效果很好。 – Boardy 2011-05-20 15:18:35