Base64加密解密注意事项

//无法解码包含换行的编码结果
Base64.getDecoder().decode()
Base64.getEncoder().encode()

Base64.getMimeDecoder().decode()
Base64.getMimeEncoder().encode()

JDK7的Base64编码结果包含换行;
JDK8的Base64编码结果不包含换行;
JDK的Base64.getDecoder()无法解码包含换行的编码结果,需要使用Base64.getMimeDecoder();

base64编码格式是按照rfc4648和rfc2045两个协议来实现编码和解码方法
编码和解码操作是照着两个协议中的'Table 1'中指定的'The Base64 Alphabet'来的。编码器不会添加任何换行符,解码器只会处理'The Base64 Alphabet'范围内的数据,如果不在这个范围内,解码器会拒绝处理

posted on 2022-01-21 17:25  各执一词  阅读(947)  评论(0编辑  收藏  举报

导航