我有一個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