我有一个Sqlite数据库,其中base64代码字符串存储为BLOB。我想从数据库中获取这个BLOB并解码base64并在ImageView中显示图像。 我已阅读关于编码和解码base64,这就是我现在使用的。如何将base64 blob解码为位图Android?
String[] image = new String[100000];
if (cursor.moveToFirst()){
int i = 0;
do {image[i] = cursor.getString(1);
i++;}
while (cursor.moveToNext());
String imagebyte = image[0];
byte[] decodedString = Base64.decode(imagebyte, Base64.DEFAULT);
Bitmap decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);
mImage.setImageBitmap(decodedByte);
但是什么也没有显示,我也没有收到任何错误信息。为了查明问题,我尝试编码和解码图像,然后显示位图。这是解码它的正确方法吗?我在这里使用cursor.getString(1),我也尝试过使用getBlob(1),但仍然没有显示。我应该使用getString还是getBlob? 有没有简单的方法来检查base64代码的有效性?谢谢!
该列是数据类型BLOB。这是我必须处理的。因此,我正在寻找从数据库获取图像的最佳方式。我一直在尝试很多方法,猜想我迷路了。 – kakka47 2011-02-11 13:51:40