代码之家  ›  专栏  ›  技术社区  ›  Rakesh

如何从光标类中检索数据

  •  36
  • Rakesh  · 技术社区  · 14 年前

    我需要知道如何从光标中检索数据。我需要这个,因为RingtoneManager以光标对象的形式返回所有音频文件,我需要知道如何检索这些值。

    安布丹

    3 回复  |  直到 7 年前
        1
  •  124
  •   Pulah Nandha user    7 年前

    一旦您拥有了光标对象,您就可以这样做:

    if (cursor.moveToFirst()){
       do{
          String data = cursor.getString(cursor.getColumnIndex("data"));
          // do what ever you want here
       }while(cursor.moveToNext());
    }
    cursor.close();
    
        2
  •  21
  •   tcb    10 年前

    这看起来有点好:

    for (cursor.moveToFirst(); !cursor.isAfterLast(); cursor.moveToNext()) {
        ...
    }
    
        3
  •  17
  •   Community Egal    11 年前

    萨尔瓦多的答案将继续从最后一行之后的行中获取数据,因为 moveToNext() 只有当光标指向最后一行之后的行时,才会返回false。它将继续迭代,即使光标指向最后一行。

    正确的模板应该是:

    if (cursor.moveToFirst()){
       while(!cursor.isAfterLast()){
          String data = cursor.getString(cursor.getColumnIndex("data"));
          // do what ever you want here
          cursor.moveToNext();
       }
    }
    cursor.close();