国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

java base64編碼、解碼的三種方式總結(jié)

瀏覽:50日期:2022-08-22 10:22:00

1.用法介紹

方式一:DatatypeConverter

說明:使用jdk自帶的DatatypeConverter.java類實(shí)現(xiàn),但是jdk版本必須>=1.6。

import java.io.UnsupportedEncodingException;import javax.xml.bind.DatatypeConverter;

編碼

/** * base64編碼之方法一 * @explain DatatypeConverter.java實(shí)現(xiàn) * @param str * 待編碼字符串 * @return 編碼字符串 */public static String encode(String str) { // base64字符串 String base64Str = ''; try { // String-->byte[] byte[] data = str.getBytes('utf-8'); // 編碼 base64Str = DatatypeConverter.printBase64Binary(data); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } return base64Str;}

解碼

/** * base64解碼之方法一 * @explain DatatypeConverter.java實(shí)現(xiàn) * @param base64Str * 待解碼字符串 * @return 解碼字符串 */public static String decode(String base64Str) { // 解碼后的字符串 String str = ''; // 解碼 byte[] base64Data = DatatypeConverter.parseBase64Binary(base64Str); try {// byte[]-->Stringstr = new String(base64Data, 'utf-8'); } catch (UnsupportedEncodingException e) {e.printStackTrace(); } return str;}

方式二:Base64

說明:使用jdk自帶的Base64.java類實(shí)現(xiàn),但是jdk版本必須>=1.8。

import java.io.UnsupportedEncodingException;import java.util.Base64;

編碼

/** * base64編碼之方法二 * @explain Base64.java實(shí)現(xiàn) * @param str * 待編碼字符串 * @return 編碼字符串 */public static String encode2(String str) { // base64字符串 String base64Str = ''; try {// String-->byte[]byte[] data = str.getBytes('utf-8');// 編碼base64Str =Base64.getEncoder().encodeToString(data); } catch (UnsupportedEncodingException e) {e.printStackTrace(); } return base64Str;}

解碼

/** * base64解碼之方法二 * @explain Base64.java實(shí)現(xiàn) * @param base64Str * 待解碼字符串 * @return 解碼字符串 */public static String decode2(String base64Str) { // 解碼后的字符串 String str = ''; // 解碼 byte[] base64Data = Base64.getDecoder().decode(base64Str); try {// byte[]-->Stringstr = new String(base64Data, 'utf-8'); } catch (UnsupportedEncodingException e) {e.printStackTrace(); } return str;} 

方式三:Base64

所需jar包:commons-codec.jar

import java.io.UnsupportedEncodingException;import org.apache.commons.codec.binary.Base64;

編碼

/** * base64編碼之方法三 * @explain Base64.java實(shí)現(xiàn) * @param str * 待編碼字符串 * @return 編碼字符串 */public static String encode3(String str) { // base64字符串 String base64Str = ''; try {// String-->byte[]byte[] data = str.getBytes('utf-8');// 編碼base64Str =Base64.encodeBase64String(data).replaceAll('rn', ''); } catch (UnsupportedEncodingException e) {e.printStackTrace(); } return base64Str;} 

解碼

/** * base64解碼之方法三 * @explain Base64.java實(shí)現(xiàn) * @param base64Str * 待解碼字符串 * @return 解碼字符串 */public static String decode3(String base64Str) { // 解碼后的字符串 String str = ''; // 解碼 byte[] base64Data = Base64.decodeBase64(base64Str); try {// byte[]-->Stringstr = new String(base64Data, 'utf-8'); } catch (UnsupportedEncodingException e) {e.printStackTrace(); } return str;}

2.測試

public static void main(String[] args) { String str = 'http://www.cnblogs.com/Marydon20170307'; String base64 = Base64Utils.encode(str);// aHR0cDovL3d3dy5jbmJsb2dzLmNvbS9NYXJ5ZG9uMjAxNzAzMDc= System.out.println(base64); String str2 = Base64Utils.decode(base64); System.out.println(str.equals(str2));// true }

3.效率比較

快-->慢:方式二 > 方式一 > 方式三

因此,如果項(xiàng)目用的是jdk1.8,最佳選擇是方式二;jdk1.6,最佳選擇是方式一。

以上就是java base64編碼、解碼的三種方式總結(jié)的詳細(xì)內(nèi)容,更多關(guān)于java base64編碼、解碼的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 一区二区三区欧美 | 亚洲韩精品欧美一区二区三区 | 国产91九色刺激露脸对白 | 美女的被男人桶爽网站 | 免费国产成人18在线观看 | 女人张开腿让男人桶免费网站 | 国内一级野外a一级毛片 | 国产精品久久久久免费视频 | 一区二区三区视频免费观看 | 美国一级毛片片aaa 美国一级毛片片aa成人 | 欧美精品人爱c欧美精品 | 一本一本久久a久久精品综合麻豆 | 九九久久视频 | 欧美一区二区三区在观看 | 成人综合在线观看 | www午夜| 成人亚洲国产精品久久 | 欧美三级不卡在线观看视频 | 亚洲国产日韩欧美 | 美女黄色影院 | 一区二区三区四区视频在线观看 | 在线观看免费精品国产 | 久久亚洲精品无码观看不卡 | 国产成人小视频 | 国模偷拍在线观看免费视频 | 国产精品手机在线亚洲 | 国产黄色小视频 | 亚洲美女视频在线 | 国产91久久久久久久免费 | 国产视频软件在线 | 国产原创系列在线 | 国产精品影视 | 男女上下爽无遮挡午夜免费视频 | 国产精品精品国产一区二区 | 美国免费高清一级毛片 | 中文字幕一级片 | 91久久网| 亚洲欧美日韩综合久久久久 | 欧美特黄aaaaaa| 欧美黄色免费网站 | 久久国产精品久久国产精品 |