android – 如何保存数据库中的位图?

前端之家收集整理的这篇文章主要介绍了android – 如何保存数据库中的位图?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想知道如何在数据库中保存位图.我以db形式创建表:
  1. @Override
  2. public void onCreate(sqliteDatabase db)
  3. {
  4. db.execsql("CREATE TABLE " + TABLE_NAME + " (_id INTEGER PRIMARY KEY AUTOINCREMENT,image BLOB)");
  5. }

我的问题是我无法插入图像.请告诉我需要插入图像的格式.

解决方法

如果您有位图图像,那么您可以执行以下操作.
  1. Bitmap photo = <Your image>
  2. ByteArrayOutputStream bos = new ByteArrayOutputStream();
  3. photo.compress(Bitmap.CompressFormat.PNG,100,bos);
  4. byte[] bArray = bos.toByteArray();

然后可以使用以下方式将数据保存在表中.

  1. db = YourDBHelper.getInstance(ctx).getWritableDatabase();
  2. ContentValues values = new ContentValues();
  3. values.put("image",bArray);
  4. db.insert(TABLE_NAME,null,values);

猜你在找的Android相关文章