Cursor cursor = db.rawQuery(...); try { while (cursor.moveToNext()) { ... } } finally { cursor.close(); }
@Override /** Closes the underlying cursor: do not try to get entities not loaded (using get) before. */ public void close() { cursor.close(); }
@SuppressWarnings("deprecation") @Override public boolean isNull(int columnIndex) { return window.isNull(position, columnIndex); }
public String getRealPathFromURI(Uri contentUri) { String res = null; String[] proj = { MediaStore.Images.Media.DATA }; Cursor cursor = getContentResolver().query(contentUri, proj, null, null, null); if(cursor.moveToFirst()){; int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); res = cursor.getString(column_index); } cursor.close(); return res; }
String selection = "_id = "+id; Uri uri = Uri.parse("content://sms"); Cursor cursor = contentResolver.query(uri, null, selection, null, null); String phone = cursor.getString(cursor.getColumnIndex("address")); int type = cursor.getInt(cursor.getColumnIndex("type"));// 2 = sent, etc. String date = cursor.getString(cursor.getColumnIndex("date")); String body = cursor.getString(cursor.getColumnIndex("body"));
@Override public Long readKey(Cursor cursor, int offset) { return cursor.getLong(offset + 0); }
@Override public int getCount() { return window.getNumRows(); }
@Override public byte[] getBlob(int columnIndex) { return window.getBlob(position, columnIndex); }
@Override public long getLong(int columnIndex) { return window.getLong(position, columnIndex); }
@Override public double getDouble(int columnIndex) { return window.getDouble(position, columnIndex); }
public FastCursor(CursorWindow window) { this.window = window; count = window.getNumRows(); }