我的资产中有几个可读数据库,结构相同。用户将选择数据库的名称,并在String中传递其SQliteOpenHelper
类的名称。我使用Class.forname()
成功发起了课程,但我无法将Class.getMethod("TableA", null)
投放到Cursor
。任何人都可以帮助我获取游标,而我只有SQLiteOpenHelper Class
名称吗?
答案 0 :(得分:0)
为您的所有类创建公共基类(或接口),然后您可以直接将新对象转换为该类型并直接访问其成员。
答案 1 :(得分:0)
好吧,我为我的问题找到了另一种选择。如果所有数据库都具有相同的结构,例如相同的表但不同的数据。您只能有一个 SQLiteOpenHelper 类,并将数据库名称传递给类本身,而不是将其定义为静态final。见下面的代码
public class MyDatabases extends SQLiteOpenHelper {
public ReadableDatabase (Context context, String Name) {super(context, Name, null, 1);}
}