logo

Java Base64 Encode og Decode

Java leverer en klasse Base64 til at håndtere kryptering. Du kan kryptere og dekryptere dine data ved at bruge de medfølgende metoder. Du skal importere java.util.Base64 i din kildefil for at bruge dens metoder.

Denne klasse giver tre forskellige indkodere og dekodere til at kryptere information på hvert niveau. Du kan bruge disse metoder på følgende niveauer.


Grundlæggende kodning og afkodning

Den bruger Base64-alfabetet specificeret af Java i RFC 4648 og RFC 2045 til kodnings- og afkodningsoperationer. Indkoderen tilføjer ikke noget linjeseparatortegn. Dekoderen afviser data, der indeholder tegn uden for base64-alfabetet.


URL- og filnavnkodning og -afkodning

Den bruger Base64-alfabetet specificeret af Java i RFC 4648 til kodnings- og afkodningsoperationer. Indkoderen tilføjer ikke noget linjeseparatortegn. Dekoderen afviser data, der indeholder tegn uden for base64-alfabetet.


MIME

Den bruger Base64-alfabetet som specificeret i RFC 2045 til kodnings- og afkodningsoperationer. Det kodede output skal være repræsenteret i linjer på højst 76 tegn hver og bruger et vognretur ' ' efterfulgt umiddelbart af et linefeed ' ' som linjeseparator. Der tilføjes ingen linjeseparator til slutningen af ​​det kodede output. Alle linjeseparatorer eller andre tegn, der ikke findes i base64 alfabettabellen, ignoreres i afkodningsoperationen.


Indlejrede klasser af Base64

Klasse Beskrivelse
Base64.Dekoder Denne klasse implementerer en dekoder til afkodning af bytedata ved hjælp af Base64-kodningsskemaet som specificeret i RFC 4648 og RFC 2045.
Base64.Encoder Denne klasse implementerer en indkoder til kodning af bytedata ved hjælp af Base64-kodningsskemaet som specificeret i RFC 4648 og RFC 2045.

Base64 metoder

Metoder Beskrivelse
public static Base64.Decoder getDecoder() Det returnerer en Base64.Decoder, der afkoder ved hjælp af Basic type base64-kodningsskema.
public static Base64.Encoder getEncoder() Det returnerer en Base64.Encoder, der koder ved hjælp af Basic-typen base64-kodningsskema.
public static Base64.Decoder getUrlDecoder() Det returnerer en Base64.Decoder, der afkoder ved hjælp af URL og filnavn sikker type base64 kodningsskema.
public static Base64.Decoder getMimeDecoder() Det returnerer en Base64.Decoder, der afkoder ved hjælp af MIME-typen base64 afkodningsskema.
public static Base64.Encoder getMimeEncoder() Det returnerer en Base64.Encoder, der koder ved hjælp af MIME-typen base64-kodningsskema.
public static Base64.Encoder getMimeEncoder(int lineLength, byte[] lineSeparator) Det returnerer en Base64.Encoder, der koder ved hjælp af MIME-typen base64-kodningsskema med specificeret linjelængde og linjeseparatorer.
public static Base64.Encoder getUrlEncoder() Det returnerer en Base64.Encoder, der koder ved hjælp af URL og filnavn sikker type base64 kodningsskema.

Base64.Dekodermetoder

Metoder Beskrivelse
offentlig byte[] decode(byte[] src) Den afkoder alle bytes fra input-byte-arrayet ved hjælp af Base64-kodningsskemaet, og skriver resultaterne til et nyligt allokeret output-byte-array. Det returnerede byte-array er af længden af ​​de resulterende bytes.
offentlig byte[] decode(String src) Den afkoder en Base64-kodet streng til en nyligt allokeret byte-array ved hjælp af Base64-kodningsskemaet.
public int decode(byte[] src, byte[] dst) Den afkoder alle bytes fra input-byte-arrayet ved hjælp af Base64-kodningsskemaet, skriver resultaterne ind i det givne output-byte-array, startende ved offset 0.
offentlig ByteBuffer decode (ByteBuffer buffer) Den afkoder alle bytes fra input-byte-bufferen ved hjælp af Base64-kodningsskemaet og skriver resultaterne ind i en nyligt allokeret ByteBuffer.
offentlig InputStream wrap(InputStream er) Den returnerer en inputstrøm til afkodning af Base64-kodet bytestrøm.

Base64.Encoder-metoder

Metoder Beskrivelse
offentlig byte[] encode(byte[] src) Den koder alle bytes fra det angivne byte-array til et nyligt allokeret byte-array ved hjælp af Base64-kodningsskemaet. Det returnerede byte-array er af længden af ​​de resulterende bytes.
public int encode(byte[] src, byte[] dst) Den koder alle bytes fra det specificerede byte-array ved hjælp af Base64-kodningsskemaet, skriver de resulterende bytes til det givne output-byte-array, startende ved offset 0.
public String encodeToString(byte[] src) Den koder det angivne byte-array til en streng ved hjælp af Base64-kodningsskemaet.
offentlig ByteBuffer encode (ByteBuffer buffer) Den koder alle resterende bytes fra den specificerede bytebuffer til en nyligt allokeret ByteBuffer ved hjælp af Base64-kodningsskemaet. Ved retur vil kildebufferens position blive opdateret til dens grænse; dens grænse vil ikke være blevet ændret. Den returnerede outputbuffers position vil være nul, og dens grænse vil være antallet af resulterende kodede bytes.
offentlig OutputStream wrap(OutputStream os) Den ombryder en outputstrøm til kodning af bytedata ved hjælp af Base64-kodningsskemaet.
public Base64.Encoder withoutPadding() Det returnerer en encoder-instans, der koder på samme måde som denne, men uden at tilføje noget udfyldningstegn i slutningen af ​​de kodede bytedata.

Java Base64 Eksempel: Grundlæggende kodning og afkodning

 import java.util.Base64; publicclass Base64BasicEncryptionExample { publicstaticvoid main(String[] args) { // Getting encoder Base64.Encoder encoder = Base64.getEncoder(); // Creating byte array bytebyteArr[] = {1,2}; // encoding byte array bytebyteArr2[] = encoder.encode(byteArr); System.out.println('Encoded byte array: '+byteArr2); bytebyteArr3[] = newbyte[5]; // Make sure it has enough size to store copied bytes intx = encoder.encode(byteArr,byteArr3); // Returns number of bytes written System.out.println('Encoded byte array written to another array: '+byteArr3); System.out.println('Number of bytes written: '+x); // Encoding string String str = encoder.encodeToString('JavaTpoint'.getBytes()); System.out.println('Encoded string: '+str); // Getting decoder Base64.Decoder decoder = Base64.getDecoder(); // Decoding string String dStr = new String(decoder.decode(str)); System.out.println('Decoded string: '+dStr); } } 

Produktion:

 Encoded byte array: [B@6bc7c054 Encoded byte array written to another array: [B@232204a1 Number of bytes written: 4 Encoded string: SmF2YVRwb2ludA== Decoded string: JavaTpoint 

Java Base64 Eksempel: URL-kodning og -afkodning

 import java.util.Base64; publicclass Base64BasicEncryptionExample { publicstaticvoid main(String[] args) { // Getting encoder Base64.Encoder encoder = Base64.getUrlEncoder(); // Encoding URL String eStr = encoder.encodeToString('http://www.javatpoint.com/java-tutorial/'.getBytes()); System.out.println('Encoded URL: '+eStr); // Getting decoder Base64.Decoder decoder = Base64.getUrlDecoder(); // Decoding URl String dStr = new String(decoder.decode(eStr)); System.out.println('Decoded URL: '+dStr); } } 

Produktion:

 Encoded URL: aHR0cDovL3d3dy5qYXZhdHBvaW50LmNvbS9qYXZhLXR1dG9yaWFsLw== Decoded URL: http://www.javatpoint.com/java-tutorial/ 

Java Base64 Eksempel: MIME Encoding and Decoding

 package Base64Encryption; import java.util.Base64; publicclass Base64BasicEncryptionExample { publicstaticvoid main(String[] args) { // Getting MIME encoder Base64.Encoder encoder = Base64.getMimeEncoder(); String message = 'Hello, 
You are informed regarding your inconsistency of work'; String eStr = encoder.encodeToString(message.getBytes()); System.out.println('Encoded MIME message: '+eStr); // Getting MIME decoder Base64.Decoder decoder = Base64.getMimeDecoder(); // Decoding MIME encoded message String dStr = new String(decoder.decode(eStr)); System.out.println('Decoded message: '+dStr); } } 

Produktion:

 Encoded MIME message: SGVsbG8sIApZb3UgYXJlIGluZm9ybWVkIHJlZ2FyZGluZyB5b3VyIGluY29uc2lzdGVuY3kgb2Yg d29yaw== Decoded message: Hello, You are informed regarding your inconsistency of work