Cómo convertir binario a Base64
- Pega los bits en Entrada · Binario.
- El Base64 aparece en Salida · Base64 mientras escribes.
- Bajo la salida, Relleno (=) añade o quita los signos
=finales, y Ajuste de línea corta el resultado cada 64 o 76 caracteres para usarlo en PEM o MIME. - Usa Copiar salida o Descargar. Para comprobar el resultado, invierte la dirección con Base64 → Binario o abre Base64 a binario.
Cómo se lee la entrada
El convertidor elige entre dos lecturas:
- Agrupada. Si los bits están separados por espacios, saltos de línea, comas, punto y coma o
|, y ningún grupo pasa de 8 bits, cada grupo es un byte. Se permiten grupos cortos, así que ASCII de 7 bits como1001000 1101001se lee comoHi, y1 0 1son tres bytes con los valores 1, 0 y 1. - Continua. Si no hay separadores, o algún grupo pasa de 8 bits, todos los bits se unen y se cortan en bytes desde la izquierda. En ese caso el total tiene que ser múltiplo de 8.
Los prefijos 0b se ignoran en los dos casos. Cualquier carácter que no sea 0, 1 o un separador detiene la conversión e indica su posición.
Ejemplos
| Binario | Bytes | Base64 |
|---|---|---|
01001000 01101001 00100001 | 3 | SGkh |
01001000 01101001 | 2 | SGk= |
01001000 | 1 | SA== |
0100100001101001 | 2 | SGk= |
00000000 00000000 00000000 | 3 | AAAA |
11111111 11111111 11111111 | 3 | //// |
Cada 24 bits se convierten en exactamente cuatro caracteres, porque Base64 lee el flujo de bits de 6 en 6. Todo ceros corresponde a A, el primer carácter del alfabeto, y todo unos a /, el último. La salida mide aproximadamente una sexta parte de la entrada binaria: 8 bits a la entrada y 1,33 caracteres a la salida por cada byte.
De dónde salen las cadenas binarias
Las cadenas de bits aparecen en especificaciones de protocolos y hojas de datos, en constantes de máscaras de bits, en ejercicios de sistemas de numeración y en vectores de prueba escritos bit a bit. Base64 es la forma compacta de meter esos mismos bytes en un JSON, un archivo de configuración o un encabezado HTTP. Si ya tienes los bits en hex, Hex a Base64 es más corto de pegar; si tienes valores de bytes en decimal, usa Decimal a Base64.
Binario a Base64 en código
import base64
bits = "0100100001101001"
data = int(bits, 2).to_bytes(len(bits) // 8, "big")
base64.b64encode(data).decode() # 'SGk='
int(bits, 2) descarta los ceros iniciales, pero to_bytes con la longitud original los recupera. Para bytes separados por espacios, bytes(int(b, 2) for b in s.split()) es más sencillo.
const bits = "01001000 01101001";
Buffer.from(bits.split(" ").map(b => parseInt(b, 2))).toString("base64"); // 'SGk='
Las páginas de Python y Node.js muestran la dirección contraria y el manejo de archivos.
Problemas habituales
- “15 bits no son un número entero de bytes”. La cifra del mensaje te dice cuánto te desvías. Normalmente se perdió un cero inicial del primer byte, como
1001000escrito en lugar de01001000dentro de una cadena continua. - Un Base64 inesperado con una entrada agrupada. Comprueba que ningún grupo tenga 9 dígitos o más. Un solo grupo largo pasa toda la entrada al modo continuo y los límites de los bytes se desplazan.
- Letras u
Oen lugar de0. El texto copiado de PDF y aplicaciones de chat a veces contiene unaOmayúscula u otros caracteres parecidos. El mensaje de error señala la posición.
Preguntas frecuentes
¿Cómo convierto una cadena binaria a Base64?
Pega los bits en la entrada. Si están agrupados en bytes, cada grupo se convierte en un byte; si son una sola cadena sin cortes, se divide en trozos de 8 bits. El Base64 aparece mientras escribes.
¿Por qué el Base64 de mis bits termina en signos =?
El número de bytes no es múltiplo de 3. Dos bytes dan un = y un byte da ==. Desmarca Relleno (=) si el receptor quiere Base64 sin relleno.
Mi cadena de bits no es múltiplo de 8. ¿Y ahora qué?
Base64 codifica bytes completos, así que la herramienta se detiene con un mensaje que indica cuántos bits encontró. Añade los ceros iniciales que faltan al primer byte, o divide tú la cadena en grupos para que cada uno se lea como un byte.
¿Puedo convertir aquí un archivo binario a Base64?
Esta página lee ceros y unos escritos como texto. Para codificar un archivo de verdad, como una imagen o un PDF, usa Archivo a Base64.