首页 > 编程语言 > 详细

Java8 新增BASE64加解密API

时间:2019-10-21 23:30:38      阅读:96      评论:0      收藏:0      [点我收藏+]

什么是Base64编码?

Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法 基于64个字符A-Z,a-z,0-9,+,/的编码方式,

是一种能将任意二进制数据用64种字元组合成字符串串的方法,而这个二进制数据和字符串串资料料之间是可以互相转换的,在实际应用上,Base64除了了能将二进制数据可视化之外,

也常用来表示字串串加密过后的内容

1.早期java要中使用Base64

  -使用JDK里里sun.misc套件下的BASE64Encoder和BASE64Decoder这两个类

BASE64Encoder encoder = new BASE64Encoder();
BASE64Decoder decoder = new BASE64Decoder();
String text = "湖南省长沙市";
byte[] textByte = text.getBytes("UTF-8");
//编码
String encodedText = encoder.encode(textByte);
System.out.println(encodedText);
//解码
System.out.println(new String(decoder.decodeBuffer(encodedText),
"UTF-8"));

  缺点:编码和解码的效率?比较差,公开信息说以后的版本会取消这个方法

  Apache Commons Codec有提供Base64的编码与解码 缺点:是需要引用Apache Commons Codec

2.JDK8之后使用API

  Jdk1.8的java.util包中,新增了了Base64的类
  好处:不用引包,编解码销量量远?大于 sun.misc 和 Apache Commons Codec

Base64.Decoder decoder = Base64.getDecoder();
Base64.Encoder encoder = Base64.getEncoder();
String text = "湖南省长沙市";
byte[] textByte = text.getBytes("UTF-8");
//编码
String encodedText = encoder.encodeToString(textByte);
System.out.println(encodedText);
//解码
System.out.println(new String(decoder.decode(encodedText), "UTF-
8"));

 

Java8 新增BASE64加解密API

原文:https://www.cnblogs.com/gabriel-y/p/11716786.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!