Java 在Android问题中将Base64字符串转换为位图
我使用Base64字符串保存图像,并希望在Android中将其转换为位图。问题是图像视图下部区域为黑色。我还尝试了其他图像,但我面临着同样的问题 我的代码:Java 在Android问题中将Base64字符串转换为位图,java,android,imageview,base64,Java,Android,Imageview,Base64,我使用Base64字符串保存图像,并希望在Android中将其转换为位图。问题是图像视图下部区域为黑色。我还尝试了其他图像,但我面临着同样的问题 我的代码: byte[] decodedString = Base64.decode(rezept.getBildtxt(), Base64.DEFAULT); Bitmap decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);
byte[] decodedString = Base64.decode(rezept.getBildtxt(), Base64.DEFAULT);
Bitmap decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);
rezeptImage.setImageBitmap(decodedByte);
这就是它看起来的样子:
有什么想法吗?我也使用这样的代码将Base64字符串转换为位图。我很确定您的Base64字符串是错误的或太短。是的,我发现了错误Base64太短。您确定图像数据在进行Base64编码之前没有被剪裁吗?i、 e.您正在解码的数据已损坏?我建议,如果您的程序正在读取图像,请在读取图像时插入代码,复制内容并手动将其保存到文件中。尝试在某个图像查看器中打开该文件。您还应验证将图像数据转换为base64(编码)时,输出是否有效-您可以将base64编码的输出与某些第三方工具编码图像数据的输出进行比较(例如记事本++)