我想将位图转换为base64以存储在sharedpreference中。每当我试图将它转换为base64时,黑色位图的格式不正确。
以下是将位图转换为base64的代码。
ByteArrayOutputStream baos = new ByteArrayOutputStream();
b123.compress(Bitmap.CompressFormat.JPEG, 100, baos);
byte[] b = baos.toByteArray();
encodedImage = Base64.encodeToString(b, Base64.DEFAULT);
感谢您提前帮助
答案 0 :(得分:2)
试试这个:
try{
byte [] encodeByte=Base64.decode(encodedString,Base64.DEFAULT);
Bitmap bitmap=BitmapFactory.decodeByteArray(encodeByte, 0, encodeByte.length);
return bitmap;
}catch(Exception e){
e.getMessage();
return null;
}
答案 1 :(得分:2)
您是JPEG格式的压缩图片,请使用PNG并尝试转换为base64。
b123.compress(Bitmap.CompressFormat.PNG, 100, baos);