Daten als Base64 in Java kodieren
Java bietet verschiedene Methoden zum Kodieren von Daten als Base64. In dieser Diskussion untersuchen wir den Base64-Codierungsansatz und gehen auf häufig auftretende Probleme ein.
sun.misc.BASE64Encoder-Klasse
In Java 7 der sun.misc.BASE64Encoder Die Klasse wurde häufig für die Base64-Codierung verwendet. Allerdings ist diese Klasse seit Java 9 veraltet und wird nicht mehr zur Verwendung empfohlen.
Apache Commons
Alternativ können Sie Apache Commons für die Base64-Kodierung verwenden . Stellen Sie jedoch sicher, dass Sie die Importanweisung wie folgt ändern:
import org.apache.commons.codec.binary.Base64;
Verwenden Sie außerdem die Base64-Klasse anstelle der veralteten sun.*-Pakete.
Beispielcode
Hier ist ein Beispielcode-Snippet mit Apache Commons:
byte[] encodedBytes = Base64.encodeBase64("Test".getBytes()); System.out.println("encodedBytes " + new String(encodedBytes)); byte[] decodedBytes = Base64.decodeBase64(encodedBytes); System.out.println("decodedBytes " + new String(decodedBytes));
java.util.Base64 mit Java 8
Java 8 führt die Klasse java.util.Base64 für die Base64-Codierung ein. Importieren Sie es wie folgt:
import java.util.Base64;
Verwenden Sie die statischen Base64-Methoden zum Kodieren und Dekodieren:
byte[] encodedBytes = Base64.getEncoder().encode("Test".getBytes()); System.out.println("encodedBytes " + new String(encodedBytes)); byte[] decodedBytes = Base64.getDecoder().decode(encodedBytes); System.out.println("decodedBytes " + new String(decodedBytes));
Für die Zeichenfolgenkodierung und -dekodierung können Sie Folgendes verwenden:
String encodeBytes = Base64.getEncoder().encodeToString((userName + ":" + password).getBytes());
Weitere Details finden Sie in der Java-Dokumentation für Base64.
Das obige ist der detaillierte Inhalt vonWie kann ich Base64-Daten in Java effizient kodieren und dekodieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!