Encodage des données en Base64 en Java
Java fournit diverses méthodes pour encoder les données en Base64. Dans cette discussion, nous explorons l'approche de codage Base64 et abordons les problèmes courants rencontrés.
Classe sun.misc.BASE64Encoder
Dans Java 7, le sun.misc.BASE64Encoder La classe était couramment utilisée pour l’encodage Base64. Cependant, cette classe est obsolète depuis Java 9 et son utilisation n'est plus recommandée.
Apache Commons
Comme alternative, vous pouvez utiliser Apache Commons pour l'encodage Base64. . Cependant, assurez-vous de modifier l'instruction d'importation par :
import org.apache.commons.codec.binary.Base64;
De plus, utilisez la classe Base64 au lieu des packages sun.* obsolètes.
Exemple de code
Voici un exemple d'extrait de code utilisant 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 avec Java 8
Java 8 introduit la classe java.util.Base64 pour l'encodage Base64. Importez-le comme suit :
import java.util.Base64;
Utilisez les méthodes statiques Base64 pour l'encodage et le décodage :
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));
Pour l'encodage et le décodage de chaînes, vous pouvez utiliser :
String encodeBytes = Base64.getEncoder().encodeToString((userName + ":" + password).getBytes());
Consultez la documentation Java pour Base64 pour plus de détails.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!