我想知道如何在数据库中保存位图.我以db形式创建表:
@Override public void onCreate(sqliteDatabase db) { db.execsql("CREATE TABLE " + TABLE_NAME + " (_id INTEGER PRIMARY KEY AUTOINCREMENT,image BLOB)"); }
我的问题是我无法插入图像.请告诉我需要插入图像的格式.
解决方法
如果您有位图图像,那么您可以执行以下操作.
Bitmap photo = <Your image> ByteArrayOutputStream bos = new ByteArrayOutputStream(); photo.compress(Bitmap.CompressFormat.PNG,100,bos); byte[] bArray = bos.toByteArray();
然后可以使用以下方式将数据保存在表中.
db = YourDBHelper.getInstance(ctx).getWritableDatabase(); ContentValues values = new ContentValues(); values.put("image",bArray); db.insert(TABLE_NAME,null,values);