前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Android加载Base64编码格式的图片

Android加载Base64编码格式的图片

作者头像
SoullessCoder
修改2021-02-03 10:01:41
3.1K0
修改2021-02-03 10:01:41
举报
文章被收录于专栏:CodeCode

Base64是传输字节码的编码,Android开发过程中,图片的加载多数是请求URL路径或者加载本地的图片,当然也有加载服务器用Base64编码过的图片,比如图形验证码。当然图形验证码我们Android也可以用代码写,这里就介绍Android端加载Base64编码的图片。话不多说,直接上代码:

ImageView加载Base64编码图片,代码:

代码语言:txt
复制
   //Base64编码地址(地址太长,省略)


    String base64String = "data:image/jpeg;base64,/9j/4AAQSkZJRgA...........";

    //将Base64编码字符串解码成Bitmap

    byte[] decodedString = Base64.decode(base64String.split(",")[1], Base64.DEFAULT);

    Bitmap decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);

    //设置ImageView图片

    imageView.setImageBitmap(decodedByte);

编码后的图片会有” data:image/;base64, “标识,在进行解码时我们需要去掉这一部分,否则会导致解码失败。base64String.split(",")1就是获取除"data:image/;base64,"后的地址。

加载Base64编码的图片就是上述的方法,有时我们还需要对图片进行编码与解码,下面就列出方法。

编码:

代码语言:txt
复制
    public String encodeImageToString(Bitmap bitmap) {

            ByteArrayOutputStream outputStream = new ByteArrayOutputStream();

            //读取图片到ByteArrayOutputStream

            bitmap.compress(Bitmap.CompressFormat.PNG, 40, outputStream); //参数如果为100那么就不压缩

            byte[] bytes = outputStream.toByteArray();

            String strImg = Base64.encodeToString(bytes, Base64.DEFAULT);

            return strImg;
}

解码:

代码语言:txt
复制
    public Bitmap sendImage(String imgAddress) {

            byte[] input = Base64.decode(imgAddress, Base64.DEFAULT);

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

            return bitmap;

}

小编整理了一份Android电子书籍,需要的童鞋关注公众号回复:"e_books" 即可获取哦!

在这里插入图片描述
在这里插入图片描述

欢迎关注公众号(longxuanzhigu),获得更多福利、精彩内容哦!

在这里插入图片描述
在这里插入图片描述
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019.03.26 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
验证码
腾讯云新一代行为验证码(Captcha),基于十道安全栅栏, 为网页、App、小程序开发者打造立体、全面的人机验证。最大程度保护注册登录、活动秒杀、点赞发帖、数据保护等各大场景下业务安全的同时,提供更精细化的用户体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档