我需要知道如何从游标中检索数据。我需要这个,因为ringtonemanager以游标对象的形式返回所有音频文件,我需要知道如何检索值。
Anbudan。
答案 0 :(得分:125)
拥有Cursor对象后,您可以执行以下操作:
if (cursor.moveToFirst()){
do{
String data = cursor.getString(cursor.getColumnIndex("data"));
// do what ever you want here
}while(cursor.moveToNext());
}
cursor.close();
答案 1 :(得分:22)
这看起来好一点:
for (cursor.moveToFirst(); !cursor.isAfterLast(); cursor.moveToNext()) {
...
}
答案 2 :(得分:17)
Salvador的答案将继续从最后一行之后的行中获取数据,因为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();