如查询电话本,SMS的ContentResolver提供的cursor = getContentResolver().query(Uri.parse("content://sms/inbox"),
null, null, null, null);
通过这个cursor的下面的代码来用cursor的列名来获得内容:
cursor.moveToPosition(arg2);
String body = cursor.getString(
cursor.getColumnIndexOrThrow("body")).toString();
String address = cursor.getString(
cursor.getColumnIndexOrThrow("address")).toString();
打印数据库所有列名 并输出至LogCat
public void queryColumnName(Cursor cursor){
for(int i=0;i<cursor.getColumnCount();i++){
String columnName = cursor.getColumnName(i);
Log.d("TAG","column name:"+columnName);
}
}
查询数据库 指定列 指定列名 并输出查询结果
public String queryItem(Cursor cursor,int id, String columnName){
if(id > cursor.getCount()){
return "";
}
cursor.moveToPosition(id);
int columnIndex = cursor.getColumnIndex(columnName);
return cursor.getString(columnIndex);
}