logo

Codificación y decodificación Java Base64

Java proporciona una clase Base64 para lidiar con el cifrado. Puede cifrar y descifrar sus datos utilizando los métodos proporcionados. Debe importar java.util.Base64 en su archivo fuente para usar sus métodos.

Esta clase proporciona tres codificadores y decodificadores diferentes para cifrar información en cada nivel. Puede utilizar estos métodos en los siguientes niveles.


Codificación y decodificación básica

Utiliza el alfabeto Base64 especificado por Java en RFC 4648 y RFC 2045 para operaciones de codificación y decodificación. El codificador no agrega ningún carácter separador de línea. El decodificador rechaza datos que contengan caracteres fuera del alfabeto base64.


Codificación y decodificación de URL y nombres de archivos

Utiliza el alfabeto Base64 especificado por Java en RFC 4648 para operaciones de codificación y decodificación. El codificador no agrega ningún carácter separador de línea. El decodificador rechaza datos que contengan caracteres fuera del alfabeto base64.


MÍMICA

Utiliza el alfabeto Base64 como se especifica en RFC 2045 para operaciones de codificación y decodificación. La salida codificada debe representarse en líneas de no más de 76 caracteres cada una y utiliza un retorno de carro ' ' seguido inmediatamente por un salto de línea ' ' como separador de línea. No se agrega ningún separador de línea al final de la salida codificada. Todos los separadores de línea u otros caracteres que no se encuentran en la tabla alfabética base64 se ignoran en la operación de decodificación.

cómo eliminar el primer carácter en excel

Clases anidadas de Base64

Clase Descripción
Base64.Decodificador Esta clase implementa un decodificador para decodificar datos de bytes utilizando el esquema de codificación Base64 como se especifica en RFC 4648 y RFC 2045.
Base64.Codificador Esta clase implementa un codificador para codificar datos de bytes utilizando el esquema de codificación Base64 como se especifica en RFC 4648 y RFC 2045.

Métodos Base64

Métodos Descripción
Base64.Decoder estática pública getDecoder() Devuelve un Base64.Decoder que decodifica utilizando el esquema de codificación base64 de tipo básico.
Base64.Encoder estático público getEncoder() Devuelve un Base64.Encoder que codifica utilizando el esquema de codificación base64 de tipo básico.
Base64.Decoder estática pública getUrlDecoder() Devuelve un Base64.Decoder que decodifica utilizando el esquema de codificación base64 de tipo seguro de URL y nombre de archivo.
público estático Base64.Decoder getMimeDecoder() Devuelve un Base64.Decoder que decodifica utilizando el esquema de decodificación base64 tipo MIME.
Base64.Encoder estático público getMimeEncoder() Devuelve un Base64.Encoder que codifica utilizando el esquema de codificación base64 tipo MIME.
público estático Base64.Encoder getMimeEncoder (int lineLength, byte[] lineSeparator) Devuelve un Base64.Encoder que codifica utilizando el esquema de codificación base64 de tipo MIME con una longitud de línea y separadores de línea especificados.
Base64.Encoder estático público getUrlEncoder() Devuelve un Base64.Encoder que codifica utilizando el esquema de codificación base64 de tipo seguro de URL y nombre de archivo.

Métodos Base64.Decoder

Métodos Descripción
byte público[] decodificar(byte[] src) Decodifica todos los bytes de la matriz de bytes de entrada utilizando el esquema de codificación Base64 y escribe los resultados en una matriz de bytes de salida recién asignada. La matriz de bytes devuelta tiene la longitud de los bytes resultantes.
decodificación de byte público [] (String src) Decodifica una cadena codificada en Base64 en una matriz de bytes recién asignada utilizando el esquema de codificación Base64.
decodificación int pública (byte [] src, byte [] dst) Decodifica todos los bytes de la matriz de bytes de entrada utilizando el esquema de codificación Base64, escribiendo los resultados en la matriz de bytes de salida dada, comenzando en el desplazamiento 0.
decodificación pública de ByteBuffer (búfer ByteBuffer) Decodifica todos los bytes del búfer de bytes de entrada utilizando el esquema de codificación Base64 y escribe los resultados en un ByteBuffer recién asignado.
ajuste público de InputStream (InputStream es) Devuelve un flujo de entrada para decodificar el flujo de bytes codificado en Base64.

Métodos Base64.Encoder

Métodos Descripción
codificación de byte público [] (byte [] src) Codifica todos los bytes de la matriz de bytes especificada en una matriz de bytes recién asignada utilizando el esquema de codificación Base64. La matriz de bytes devuelta tiene la longitud de los bytes resultantes.
codificación int pública (byte [] src, byte [] dst) Codifica todos los bytes de la matriz de bytes especificada utilizando el esquema de codificación Base64, escribiendo los bytes resultantes en la matriz de bytes de salida dada, comenzando en el desplazamiento 0.
cadena pública codificarToString (byte [] src) Codifica la matriz de bytes especificada en una cadena utilizando el esquema de codificación Base64.
codificación pública de ByteBuffer (búfer ByteBuffer) Codifica todos los bytes restantes del búfer de bytes especificado en un ByteBuffer recién asignado utilizando el esquema de codificación Base64. Al regresar, la posición del búfer de origen se actualizará hasta su límite; su límite no habrá sido modificado. La posición del búfer de salida devuelto será cero y su límite será el número de bytes codificados resultantes.
ajuste público de OutputStream (sistema operativo OutputStream) Envuelve un flujo de salida para codificar datos de bytes utilizando el esquema de codificación Base64.
Base64 pública.Codificador sin relleno() Devuelve una instancia de codificador que codifica de manera equivalente a esta, pero sin agregar ningún carácter de relleno al final de los datos del byte codificado.

Ejemplo de Java Base64: codificación y decodificación básica

 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); } } 

Producción:

 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 

Ejemplo de Java Base64: codificación y decodificación de URL

 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); } } 

Producción:

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

Ejemplo de Java Base64: codificación y decodificación MIME

 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); } } 

Producción:

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