Weiß jemand, wie man einen String in Base64 mit Base64 decodiert und codiert? Ich verwende den folgenden Code, aber er funktioniert nicht.
String source = "password";
byte[] byteArray = source.getBytes("UTF-16");
Base64 bs = new Base64();
//bs.encodeBytes(byteArray);
System.out.println( bs.encodeBytes(byteArray));
//bs.decode(bs.encodeBytes(byteArray));
System.out.println(bs.decode(bs.encodeBytes(byteArray)));
import android.util.Base64;
und können dannBase64.encodeToString
&Base64.decode
entsprechend Ihren Anforderungen verwendenAntworten:
Zuerst:
Sendeende:
text.getBytes(encodingName)
)Base64
Klasse in base64Empfangsende:
Base64
Klasse in Bytesnew String(bytes, encodingName)
)Also so etwas wie:
Oder mit
StandardCharsets
:quelle
UTF-8
ist garantiert eine gültige Codierung in Java: siehe docs.oracle.com/javase/8/docs/api/java/nio/charset/Charset.html . Zugegeben, heutzutage würde ichStandardCharsets.UTF_8
stattdessen angeben . Ich habe die Antwort aktualisiert, um anzugeben, dass Sie sich auf das Vorhandensein des Zeichensatzes verlassen können, aber ich würde so ziemlich immer UTF-8 verwenden.Für alle anderen, die hier gelandet sind, als sie nach Informationen zum Dekodieren eines mit codierten Strings gesucht haben
Base64.encodeBytes()
, war hier meine Lösung:Außerdem unterstütze ich ältere Android-Versionen, sodass ich die Base64-Bibliothek von Robert Harder von http://iharder.net/base64 verwende
quelle
Für Kotlin mb besser zu verwenden:
Beispiel:
quelle
Wenn Sie Kotlin verwenden, verwenden Sie es wie folgt
Für Encode
Zum Dekodieren
quelle
etwas wie
quelle
So verschlüsseln Sie:
So entschlüsseln Sie:
quelle
Basierend auf den vorherigen Antworten verwende ich die folgenden Dienstprogrammmethoden, falls jemand sie verwenden möchte.
quelle
Für API Level 26+
Ref: https://developer.android.com/reference/java/util/Base64.Encoder.html#encodeToString (byte [])
quelle
Die Klasse 'java.util.Base64' bietet Funktionen zum Codieren und Decodieren der Informationen im Base64-Format.
Wie bekomme ich Base64 Encoder?
Wie bekomme ich Base64 Decoder?
Wie verschlüssele ich die Daten?
Wie dekodiere ich die Daten?
Weitere Informationen erhalten Sie unter diesem Link .
quelle
quelle
quelle
für Android API
byte[]
zuBase64String
Encoderquelle