Android游标使用字符串获取列索引

时间:2012-08-03 11:03:23

标签: android cursor

当我cursor.getColumnIndex(Database._F_A3)时,这会按预期工作。

但如果我这样做

String dbColumn = "Database._F_A3";
cursor.getColumnIndex(dbColumn );

它给出了错误。

我认为这是因为getColumnIndex()管理括号内的任何内容作为要在列中搜索的字符串。

有没有办法做我想做的事?

favolas

1 个答案:

答案 0 :(得分:1)

String dbColumn = "Database._F_A3";
cursor.getColumnIndex(dbColumn );

调用上面的内容是完全错误的,因为它会更改您在Database类中声明为static的名称

假设您在Database类中声明为

public static String _F_A3 = "something";

现在如果你打电话,

String dbColumn = "Database._F_A3";
cursor.getColumnIndex(dbColumn );  // it means you are using Database._F_A3 
                 // as column name which doesn't exist instead of "something"

所以,最好尝试使用

String dbColumn = Database._F_A3;  // without quotes
cursor.getColumnIndex(dbColumn );