java byte[]和base64互相轉換


1.方式一

import java.io.UnsupportedEncodingException;
import java.util.Base64;
// byte[]轉base64
String base64Str = Base64.getEncoder().encodeToString(byteArray);
// base64轉byte[]
byte[] byteArray = Base64.getDecoder().decode(base64Str);

  說明:使用jdk自帶的Base64.java類實現,但是jdk版本必須>=1.8。       

2.方式二

import java.io.UnsupportedEncodingException;
import javax.xml.bind.DatatypeConverter;
// byte[]轉base64
String base64Str = DatatypeConverter.printBase64Binary(byteArray);
// base64轉byte[]
byte[] byteArray = DatatypeConverter.parseBase64Binary(base64Str);

  說明:使用jdk自帶的DatatypeConverter.java類實現,但是jdk版本必須>=1.6。

3.方式三

import java.io.UnsupportedEncodingException;
import org.apache.commons.codec.binary.Base64;
// byte[]轉base64
String base64Str =Base64.encodeBase64String(byteArray).replaceAll("\r\n", "");
// base64轉byte[]
byte[] byteArray = Base64.decodeBase64(base64Str);

  所需jar包:commons-codec.jar

4.效率比較

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

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

 

寫在最后

  哪位大佬如若發現文章存在紕漏之處或需要補充更多內容,歡迎留言!!!

 相關推薦:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM