Android 操作 sqlite3 的 blob 字段
时间:2011-01-09 来源:hedalixin
这张图里面的标注部分,来自数据库的字段。见表结构:
数据库文件是从网上下载得到的,见android使用sqlite3数据库(网络下载文件)。
显示这两个字段的代码,只取第一行记录:
SQLiteDatabase database = SQLiteDatabase
.openOrCreateDatabase(getFileStreamPath(fileName)
.getAbsolutePath(), null);
Cursor cursor = database.rawQuery(
"select name,image from users", new String[] {});
if (cursor.moveToFirst()) {
userName = cursor.getString(0);
ByteArrayInputStream stream = new ByteArrayInputStream(
cursor.getBlob(1));
image = Drawable.createFromStream(stream, "image");
Log.i(TAG, "user name: " + userName);
}
database.close();
声明的成员变量,供上面代码使用的:
private String userName;
private Drawable image;
在对话框里面显示:
AlertDialog.Builder builder = new Builder(
WelComeMainActivity.this);
builder.setMessage("数据更新完毕。用户名:" + userName);
builder.setTitle("提示");
builder.setIcon(image);
builder.setPositiveButton("确认", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
dialog.dismiss();
}
});
builder.create().show();