Base64是一種能將任意Binary資料用64種字元組合成字串的方法,而這個Binary資料和字串資料彼此之間是能夠互相轉換的,十分方便。在實際應用上,Base64除了能將Binary資料可視化以外,也經常使用來表示字串加密事後的內容。若是要使用Java 程式語言來實做Base64的編碼與解碼功能,能夠參考本篇文章的做法。java
Java 8的java.util套件中,新增了Base64的類別,能夠用來處理Base64的編碼與解碼,用法以下:測試
1 final Base64.Decoder decoder = Base64.getDecoder(); 2 final Base64.Encoder encoder = Base64.getEncoder(); 3 final String text = "字串文字"; 4 final byte[] textByte = text.getBytes("UTF-8"); 5 //編碼 6 final String encodedText = encoder.encodeToString(textByte); 7 System.out.println(encodedText); 8 //解碼 9 System.out.println(new String(decoder.decode(encodedText), "UTF-8"));
與sun.mis c套件和Apache Commons Codec所提供的Base64編解碼器來比較的話,Java 8提供的Base64擁有更好的效能。實際測試編碼與解碼速度的話,Java 8提供的Base64,要比sun.mis c套件提供的還要快至少11倍,比Apache Commons Codec提供的還要快至少3倍。所以在Java上若要使用Base64,這個Java 8底下的java .util套件所提供的Base64類別絕對是首選!編碼