1. ホーム
  2. android

[解決済み] バイト配列の画像ファイルをビットマップに変換するには?

2022-07-17 17:37:45

質問

画像を SQLite DataBase . 私はそれを BLOBString で、どちらの場合も に変換すると、画像が保存され、それを取得することができます。 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 というように、画像がデコードできなかった場合は