suchen
HeimJavajavaLernprogrammJava Base64 Dekodierung

Java Base64 Dekodierung

Aug 30, 2024 pm 04:10 PM
java

Bei Java Base64 Decode ist Base64 ein Codierungsschema in einem Binär-zu-Text-Format, das Binärdaten bezeichnet, die in Form eines druckbaren ASCII-String-Formats vorliegen, indem sie in Radix-64-Darstellungen übersetzt werden. Diese Base64-Daten können je nach den Anforderungen des Benutzers kodiert oder dekodiert werden und können mit Hilfe bestimmter Methoden durchgeführt werden. Dafür ist der Import des Pakets java.util.Base64 ein wesentlicher Schritt. Der Hauptvorteil der Kodierung und Dekodierung dieser Daten ist sowohl der Datenschutz als auch die Sicherheit. In den folgenden Abschnitten erfolgt eine detaillierte Beschreibung der einzelnen Methoden.

Starten Sie Ihren kostenlosen Softwareentwicklungskurs

Webentwicklung, Programmiersprachen, Softwaretests und andere

Erklärung:

Unten finden Sie die Deklaration für die Base64-Dekodierung:

public static class Base64.Decoder extends Object

Wie funktioniert die Base64-Dekodierung in Java?

Lassen Sie uns nun die Funktionsweise der Base64-Dekodierung sehen.

  • Erstellen Sie zunächst ein Encoderobjekt und codieren Sie die Zeichenfolge/Bytes/Bytebuffer entsprechend der Anforderung. Dies kann mit der Methode Base64.getEncoder() erfolgen.
  • Sobald es fertig ist, erstellen Sie ein neues Array für die codierten Daten.
  • Um die Daten zu dekodieren, erstellen Sie ein Decoderobjekt und ein weiteres Array zum Speichern dekodierter Daten.
  • Dekodieren Sie die kodierten Daten mit der Methode decode().
  • Drucken Sie das im Decoder-Array verfügbare Ergebnis aus.

Methoden der Java Base64-Dekodierung

Im Folgenden sind die verschiedenen Methoden der Java Base64-Dekodierung aufgeführt.

Java Base64 Dekodierung

1. öffentliches Byte[] dekodieren ( byte[] arr )

  • Dekodiert jedes einzelne Byte aus dem Eingabearray mit Hilfe des Base64-Kodierungsschemas.
  • Ergebnisse werden in ein neu zugewiesenes Byte-Array geschrieben.
  • Das zurückgegebene Byte-Array hat eine ähnliche Länge wie die resultierenden Bytes.
  • Hier ist arr das Eingabebyte-Array, das dekodiert werden muss.
  • Eine IllegalArgumentException wird ausgelöst, wenn das Eingabebyte-Array nicht in einem gültigen Base64-Format vorliegt.

Beispiel:

Code:

import java.util.Base64;
public class Base64DecodeExample {
public static void main(String[] args) {
//  encoder
Base64.Encoder enc = Base64.getEncoder();
// Encode byte array
byte arr[] = {'a'};
byte arr2[] = enc.encode(arr);
System.out.println("Array encoded is: "+ arr2);
//  decoder
Base64.Decoder dec = Base64.getDecoder();
// Decode byte array
String ds = new String(dec.decode(arr2));
System.out.println("Array decoded is:"+ds);
}
}

Ausgabe:

Java Base64 Dekodierung

Ein kodiertes und dekodiertes Ergebnis eines Arrays wird bei der Ausführung des Codes gedruckt.

2. öffentliches Byte[] dekodieren ( Stringstr )

  • Eingabezeichenfolge im Base64-Format wird mit Hilfe des Base64-Codierungsschemas dekodiert.
  • Ergebnisse werden in ein neu zugewiesenes Byte-Array geschrieben.
  • Die Ausführung dieser Methode erzeugt den Effekt der Ausführung der Methode decode( src.getBytes ( StandardCharsets.ISO_8859_1 ) ).
  • Hier ist str die Eingabezeichenfolge, die dekodiert werden muss.
  • Eine IllegalArgumentException wird ausgelöst, wenn die Eingabezeichenfolge nicht in einem gültigen Base64-Format vorliegt.

Beispiel:

Code:

import java.util.Base64;
public class Base64DecodeExample {
public static void main(String[] args) {
//  encoder
Base64.Encoder enc = Base64.getEncoder();
String s = enc.encodeToString("EduCBA".getBytes());
System.out.println("String encoded is: "+ s);
//  decoder
Base64.Decoder dec = Base64.getDecoder();
// Decode string
String ds = new String(dec.decode(s));
System.out.println("String decoded is:"+ds);
}}

Ausgabe:

Java Base64 Dekodierung

Ein kodiertes und dekodiertes Ergebnis einer Zeichenfolge wird bei der Ausführung des Codes gedruckt.

3. öffentliche int-Dekodierung ( byte[] arr, byte[] arr2)

  • Dekodiert jedes einzelne Byte aus dem Eingabearray mit Hilfe des Base64-Kodierungsschemas.
  • Ergebnisse werden in ein Byte-Array arr2 geschrieben, das den Offset bei 0 beginnt.
  • Hier ist arr das Eingabebyte-Array, das dekodiert werden muss, und arr2 ist das Ausgabearray. Stellen Sie sicher, dass arr2 über genügend Speicherplatz für die dekodierten Eingabebytes verfügt.
  • Eine IllegalArgumentException wird ausgelöst, wenn das Eingabebyte-Array kein gültiges Base64-Format hat oder arr2 nicht genügend Platz zum Schreiben der decodierten Eingabebytes hat.

Beispiel:

Code:

import java.util.Base64;
public class Base64DecodeExample {
public static void main(String[] args) {
//  encoder
Base64.Encoder enc = Base64.getEncoder();
byte arr[] = {'1'};
byte arr2[] = enc.encode(arr);
byte arr3[] = new byte[5];
System.out.println("Array encoded is: "+ arr2);
//  decoder
Base64.Decoder dec = Base64.getDecoder();
System.out.println("Array decoded is:"+ dec.decode(arr2,arr3));
}}

Ausgabe:

Java Base64 Dekodierung

Ein kodiertes und dekodiertes Ergebnis eines Byte-Arrays wird bei der Ausführung des Codes gedruckt.

4. öffentlicher ByteBufferdecode ( ByteBufferbuff )

  • Dekodiert jedes einzelne Byte aus dem Eingabebyte-Puffer mit Hilfe des Base64-Kodierungsschemas.
  • Ergebnisse werden in einen neu zugewiesenen Bytepuffer geschrieben.
  • Hier ist der Buff der Eingabebytepuffer, der dekodiert werden muss.
  • Eine IllegalArgumentException wird ausgelöst, wenn der Eingabebytepuffer kein gültiges Base64-Format hat.

Beispiel:

Code:

import java.nio.ByteBuffer;
import java.util.Base64;
public class Base64DecodeExample {
public static void main(String[] args) {
//  encoder
Base64.Encoder enc = Base64.getEncoder();
String st = "Happy weekend";
ByteBuffer buff= ByteBuffer.wrap(st.getBytes());
ByteBuffer buff2 = enc.encode(buff);
System.out.print("Encoded: ");
while(buff2.hasRemaining()){
char ch = (char) buff2.get();
System.out.print(ch);
}
buff2.clear();
//  decoder
Base64.Decoder dec = Base64.getDecoder();
ByteBuffer buff3 = dec.decode(buff2);
System.out.print(" Decoded: ");
while(buff3.hasRemaining()){
char ch3 = (char) buff3.get();
System.out.print(ch3);
}
buff2.clear();
}
}

Ausgabe:

Java Base64 Dekodierung

Ein kodiertes und dekodiertes Ergebnis eines Bytepuffers wird bei der Ausführung des Codes gedruckt.

5. public InputStreamwrap ( InputStreaminpt )

  • An input stream will be returned in order to decode the byte stream, which is Base64 encoded.
  • Here, input is the input stream.

Example

Code:

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Base64;
public class Base64DecodeExample {
public static void main(String[] args) throws IOException {
try (InputStream inpt       = new FileInputStream("F:\\EduCBA\\April\\Edu.txt"))
{
Base64.Encoder enc = Base64.getEncoder();
OutputStream opst = enc.wrap(new FileOutputStream("F:\\EduCBA\\April\\Eduout.txt"));
int b1;
while ((b1 = inpt.read()) != -1)
{
opst.write(b1);
}
opst.close();
}
catch (IOException ie)
{
System.err.printf("I/O exception", ie.getMessage());
}
try (FileOutputStream fopst = new FileOutputStream("F:\\EduCBA\\April\\Eduou.txt"))
{
Base64.Decoder dec = Base64.getDecoder();
InputStream inpt2 = dec.wrap(new FileInputStream("F:\\EduCBA\\April\\Eduout.txt"));
int b1;
while ((b1 = inpt2.read()) != -1)
fopst.write(b1);
inpt2.close();
}
catch (IOException ie)
{
System.err.printf("I/O exception", ie.getMessage());
}
}
}

Output:

In this program, create three create text files, Edu, Eduout, Eduou, in a location for storing data, encoded data, and decoded data respectively. The below figure is the input data.

Java Base64 Dekodierung

The encoded and decoded data will be written into the two other files on executing the code, as shown below.

Java Base64 Dekodierung

Java Base64 Dekodierung

Das obige ist der detaillierte Inhalt vonJava Base64 Dekodierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Wie benutze ich Maven oder Gradle für das fortschrittliche Java -Projektmanagement, die Erstellung von Automatisierung und Abhängigkeitslösung?Wie benutze ich Maven oder Gradle für das fortschrittliche Java -Projektmanagement, die Erstellung von Automatisierung und Abhängigkeitslösung?Mar 17, 2025 pm 05:46 PM

In dem Artikel werden Maven und Gradle für Java -Projektmanagement, Aufbau von Automatisierung und Abhängigkeitslösung erörtert, die ihre Ansätze und Optimierungsstrategien vergleichen.

Wie erstelle und verwende ich benutzerdefinierte Java -Bibliotheken (JAR -Dateien) mit ordnungsgemäßem Versioning und Abhängigkeitsmanagement?Wie erstelle und verwende ich benutzerdefinierte Java -Bibliotheken (JAR -Dateien) mit ordnungsgemäßem Versioning und Abhängigkeitsmanagement?Mar 17, 2025 pm 05:45 PM

In dem Artikel werden benutzerdefinierte Java -Bibliotheken (JAR -Dateien) mit ordnungsgemäßem Versioning- und Abhängigkeitsmanagement erstellt und verwendet, wobei Tools wie Maven und Gradle verwendet werden.

Wie implementiere ich mehrstufige Caching in Java-Anwendungen mit Bibliotheken wie Koffein oder Guava-Cache?Wie implementiere ich mehrstufige Caching in Java-Anwendungen mit Bibliotheken wie Koffein oder Guava-Cache?Mar 17, 2025 pm 05:44 PM

In dem Artikel wird in der Implementierung von mehrstufigem Caching in Java mithilfe von Koffein- und Guava-Cache zur Verbesserung der Anwendungsleistung erläutert. Es deckt die Einrichtungs-, Integrations- und Leistungsvorteile sowie die Bestrafung des Konfigurations- und Räumungsrichtlinienmanagements ab

Wie kann ich JPA (Java Persistence-API) für Objektrelationszuordnungen mit erweiterten Funktionen wie Caching und faulen Laden verwenden?Wie kann ich JPA (Java Persistence-API) für Objektrelationszuordnungen mit erweiterten Funktionen wie Caching und faulen Laden verwenden?Mar 17, 2025 pm 05:43 PM

In dem Artikel werden mit JPA für Objektrelationszuordnungen mit erweiterten Funktionen wie Caching und faulen Laden erläutert. Es deckt Setup, Entity -Mapping und Best Practices zur Optimierung der Leistung ab und hebt potenzielle Fallstricke hervor. [159 Charaktere]

Wie funktioniert der Klassenladungsmechanismus von Java, einschließlich verschiedener Klassenloader und deren Delegationsmodelle?Wie funktioniert der Klassenladungsmechanismus von Java, einschließlich verschiedener Klassenloader und deren Delegationsmodelle?Mar 17, 2025 pm 05:35 PM

Mit der Klassenbelastung von Java wird das Laden, Verknüpfen und Initialisieren von Klassen mithilfe eines hierarchischen Systems mit Bootstrap-, Erweiterungs- und Anwendungsklassenloadern umfasst. Das übergeordnete Delegationsmodell stellt sicher

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Herunterladen der Mac-Version des Atom-Editors

Herunterladen der Mac-Version des Atom-Editors

Der beliebteste Open-Source-Editor

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Leistungsstarke integrierte PHP-Entwicklungsumgebung

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software

WebStorm-Mac-Version

WebStorm-Mac-Version

Nützliche JavaScript-Entwicklungstools

Sicherer Prüfungsbrowser

Sicherer Prüfungsbrowser

Safe Exam Browser ist eine sichere Browserumgebung für die sichere Teilnahme an Online-Prüfungen. Diese Software verwandelt jeden Computer in einen sicheren Arbeitsplatz. Es kontrolliert den Zugriff auf alle Dienstprogramme und verhindert, dass Schüler nicht autorisierte Ressourcen nutzen.