Android图片转base64问题记录

1、编码标准有以下几种:

CRLF

Win风格的换行符,意思就是使用CR和LF这一对作为一行的结尾而不是Unix风格的LF。
CRLF是Carriage-Return Line-Feed的缩写,意思是回车(\r)换行(\n)。
也就是说,Window风格的行结束标识符是\r\n,Unix风格的行结束标识符是\n。

DEFAULT

这个参数是默认,使用默认的方法来加密

NO_PADDING

这个参数是略去加密字符串最后的“=”

NO_WRAP

这个参数意思是略去所有的换行符(设置后CRLF就没用了)

URL_SAFE

这个参数意思是加密时不使用对URL和文件名有特殊意义的字符来作为加密字符,具体就是以-和_取代+和/。

NO_CLOSE

通常与`Base64OutputStream`一起使用,
是传递给`Base64OutputStream`的标志指示它不应关闭正在包装的输出流。

2、目前,Data URI scheme支持的类型有:

data:,文本数据
data:text/plain,文本数据
data:text/html,HTML代码
data:text/html;base64,base64编码的HTML代码
data:text/css,CSS代码
data:text/css;base64,base64编码的CSS代码
data:text/javascript,Javascript代码
data:text/javascript;base64,base64编码的Javascript代码
data:image/gif;base64,base64编码的gif图片数据
data:image/png;base64,base64编码的png图片数据
data:image/jpeg;base64,base64编码的jpeg图片数据
data:image/x-icon;base64,base64编码的icon图片数据

3、问题总结:

android端显示base64字符串时,不需要追加scheme头;这个scheme头 只是给网页用的。

问题1:接口发返回的base64含有大量\n,导致android端无法解码(6种编码标准都尝试了);
在这里插入图片描述
解决办法:
1、后端编码时,去掉\n;(最佳)
2、android端使用 replace(“\n”,“”)替换掉;(不建议,容易报错;)
在这里插入图片描述

参考:

Android图片转换为Base64编码

Android图片转base64后传到服务器图片无法显示

Android开发手记之图片base64

在线工具:

BASE64转图片

图片转BASE64

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值