Android Base64编码

代码实现
java 标准Base64

 String encodeResult = java.util.Base64.getEncoder().encodeToString("???".getBytes());

        System.out.println(encodeResult);

    输出结果为Pz8/

1
2
3
4
5

java url安全Base64
        String encodeResult = java.util.Base64.getUrlEncoder().encodeToString("???".getBytes());

        System.out.println(encodeResult);

        输出结果为Pz8_

1
2
3
4
5

android 实现
   String raw = "???";
   String result = Base64.encodeToString(raw.getBytes(), Base64.NO_WRAP |     Base64.NO_PADDING | Base64.URL_SAFE);

注意

由于Android的Base64编码是默认换行,因此在进行服务器验证的时候,会出现验证失败的情况,这是由于服务器那边的解码不支持换行符模式,所以编码时需要增加flag标志,android总共有以下几个flag。
flag种类如下: 
DEFAULT 默认模式
NO_WRAP 过滤换行符
NO_PADDING 过滤结束符=
URL_SAFE 将+,/换成-,_
CRLF 换行符模式 选中windows而不是unix的lf

do_newline的判断为设置的flag与NO_WRAP进行&操作,如果true则换行否则不换行,结合flag的值和判断的方式我们可以知道通过设置各个flag的|操作既可让flag生效。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值