使用 Java 以 Base64 編碼資料
Base64 編碼方案提供了一種以 ASCII 字串格式表示任意二進位資料的方法。本文示範如何使用 Java 對 Base64 資料進行編碼,解決嘗試使用 sun.misc.BASE64Encoder 類別時面臨的挑戰。
使用Apache Commons Codec 的解決方案
嘗試在Eclipse 中使用sun.misc.BASE64Encoder 類別時,由於Java 中不建議使用sun.* 套件,因此會發生錯誤。若要解決此問題,建議改用 Apache Commons Codec 函式庫。
導入正確的類:
import org.apache.commons.codec.binary.Base64;
使用Base64類為如下:
byte[] encodedBytes = Base64.encodeBase64("Test".getBytes()); System.out.println("Encoded Bytes: " + new String(encodedBytes)); byte[] decodedBytes = Base64.decodeBase64(encodedBytes); System.out.println("Decoded Bytes: " + new String(decodedBytes));
使用Java 8及更高版本的解決方案
在Java 8 及更高版本中,java.util.Base64 類別提供一種對資料進行編碼和解碼的便利方法Base64.
導入Base64類別:
import java.util.Base64;
使用 Base64 靜態方法:
byte[] encodedBytes = Base64.getEncoder().encode("Test".getBytes()); System.out.println("Encoded Bytes: " + new String(encodedBytes)); byte[] decodedBytes = Base64.getDecoder().decode(encodedBytes); System.out.println("Decoded Bytes: " + new String(decodedBytes));
額外註解
要將資料編碼為字串,請使用encodeToString()方法:
String encodedString = Base64.getEncoder().encodeToString("Test".getBytes());
以上是如何使用 Apache Commons Codec 和 Java 8 在 Java 中編碼和解碼 Base64 資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!