如何在Android中将Base64 blob字符串转换为图像?

时间:2013-04-09 10:11:12

标签: java android image web base64

我收到了来自我的网络服务的Base64 blob响应。我想在我的活动中创建一个图像并将其设置为Imageview。这是代码片段。 抱歉回应。

bs64img - Base64字符串响应 代码 -

byte[] imageBytes=Base64.decode(bs64img, Base64.DEFAULT);
InputStream is = new ByteArrayInputStream(imageBytes);
Bitmap image=BitmapFactory.decodeStream(is);
ImageView i=(ImageView)findViewById(R.id.imageView1);
i.setImageBitmap(image);

请帮我解决这个问题。

2 个答案:

答案 0 :(得分:0)

你可以尝试:

byte[] imgBytesData = android.util.Base64.decode(yourBase64String);
Bitmap bitmap = BitmapFactory.decodeByteArray(imgBytesData, 0, imgBytesData.length);
... then setting your ImageView or saving on FileSystem or ...

答案 1 :(得分:0)

一般情况下,嵌入图像为

<img src="data:image/png;base64,iVBORw0KGg...">

即,给出了文件的所有字节。所以试试:

byte[] imageBytes=Base64.decode(bs64img, Base64.DEFAULT);
InputStream is = new ByteArrayInputStream(imageBytes);
BufferedImage img = ImageIO.read(is);