Android Base64编码
16lz
2021-01-23
代码实现
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生效。
更多相关文章
- 【Android学习三】相关指令操作
- android操作联系人Contacts
- Android是否可以实现静默安装模式
- Android和设计模式:代理模式
- Android 深色模式适配
- 探索新的Android权限模式
- android静音模式下仍可以播放媒体声音以及调节其大小。。。。