Как преобразовать массив байтов в Bitmap

Я хочу сохранить изображение в SQLite DataBase . Я попытался сохранить его с помощью BLOB и String , в обоих случаях он сохраняет изображение и может его восстановить, но когда я конвертирую его в Bitmap используя BitmapFactory.decodeByteArray(...) он возвращает null.

Я использовал этот код, но он возвращает null

 Bitmap bitmap = BitmapFactory.decodeByteArray(blob, 0, blob.length); 

Просто попробуйте следующее:

 Bitmap bitmap = BitmapFactory.decodeFile("/path/images/image.jpg"); ByteArrayOutputStream blob = new ByteArrayOutputStream(); bitmap.compress(CompressFormat.PNG, 0 /* Ignored for PNGs */, blob); byte[] bitmapdata = blob.toByteArray(); 

Если bitmapdata является массивом байтов, то получение Bitmap выполняется следующим образом:

 Bitmap bitmap = BitmapFactory.decodeByteArray(bitmapdata, 0, bitmapdata.length); 

Возвращает декодированное Bitmap или значение null если изображение невозможно декодировать.

Ответ Уттама не помог мне. Я просто получил null, когда я это делаю:

 Bitmap bitmap = BitmapFactory.decodeByteArray(bitmapdata, 0, bitmapdata.length); 

В моем случае битмапдата имеет только буфер пикселов, поэтому невозможно использовать функцию decodeByteArray для определения ширины, высоты и цветовых бит. Поэтому я пробовал это, и он работал:

 //Create bitmap with width, height, and 4 bytes color (RGBA) Bitmap bmp = Bitmap.createBitmap(imageWidth, imageHeight, Bitmap.Config.ARGB_8888); ByteBuffer buffer = ByteBuffer.wrap(mBitmaps.get(minIndex).buffer); bmp.copyPixelsFromBuffer(buffer); 

Проверьте https://developer.android.com/reference/android/graphics/Bitmap.Config.html для разных параметров цвета.

Intereting Posts
Как заменить один полноэкранный фрагмент диалога другим, не отображая родительскую активность? Ошибка в памяти при перезапуске приложения (Android) Тип устарел Есть ли в Java класс, похожий на android.os.Handler в Android? Передача объекта GoogleApiClient из одного действия в другое Запись текстового файла на SD-карту не выполняется Как изменить цвет заголовка панели действий в коде Android RelativeLayout fill_parent неожиданное поведение в ListView с различными высотами строк Android ViewPager с RecyclerView работает неправильно внутри BottomSheet Java.lang.RuntimeException: Приложение "org.eclipse.ui.ide.workbench" не найдено в реестре Позвоните, чтобы проверить, существует ли текущий EGLContext в Android Высота измерения контейнера ошибок TextInputLayout Как получить идентификатор ресурса Android из динамически созданного (в Java) слоя-списка / LayerDrawable? Android отправляет прямое сообщение Twitter через намерение Включение выключения при отключении в приложении phonegap на Android