我的问题如下: 我已经使用blob格式将一些图片存储到sqlite数据库中,这似乎工作正常。现在我想把我的照片从数据库中取出然后再放回图像......使问题复杂化,它们的格式是可变的(png,jpg,也许别的,我不确定) 有没有办法在android中这样做?
谢谢
答案 0 :(得分:50)
使用BitmapFactory.decodeByteArray()方法:
byte[] blob=c.getBlob("yourcolumnname");
Bitmap bmp=BitmapFactory.decodeByteArray(blob,0,blob.length);
ImageView image=new ImageView(this);
image.setImageBitmap(bmp);
同时查看this帖子。
答案 1 :(得分:4)
答案 2 :(得分:2)
我更喜欢直接将字节数组转换为Drawable。这是在Android中使用的最佳格式。位图在过去产生了泄漏。
Drawable d = Drawable.createFromStream(new ByteArrayInputStream(ARRAY_BYTES), null);