Conversor de binario a texto

→
Dígitos binarios → 8 bits por byte UTF-8 → caracteres decodificados

Binario a texto: decodificar bytes y saber cuándo no se puede

Qué hace esta conversión

Lee una secuencia de bytes binarios y la decodifica como texto UTF-8. Ocho bits forman 1 byte y luego los bytes se decodifican juntos, porque un solo carácter puede ocupar varios. El paso de decodificación es donde está el trabajo real: las fronteras de byte no dicen nada sobre las fronteras de carácter.

Cómo sabe el decodificador dónde acaba cada carácter

Los bits iniciales de cada byte anuncian su papel. Un byte que empieza por 0 va solo, uno que empieza por 110 abre un carácter de 2 bytes, 1110 abre uno de 3 bytes y 11110 abre uno de 4, mientras que los bytes de continuación empiezan por 10. Esa estructura permite recorrer un flujo sin que nadie indique dónde están los caracteres y, además, hace detectable un flujo cortado en el sitio equivocado.

Tabla de conversión de binario a texto

Secuencias de bytes con el texto que decodifican. Las filas multibyte muestran el patrón de bits inicial haciendo su trabajo, y la última enseña cómo se ven unos bytes crudos que no forman texto imprimible.

BinarioTexto
01000001A
01100001a
01001000 01101001Hi
01001111 01001011OK
00110001 00110010 00110011123
11100100 10111000 10101101中

De dónde salen los caracteres corruptos

Un texto destrozado casi siempre significa que los bytes se decodificaron con la codificación equivocada o se cortaron en el desplazamiento incorrecto. Decodificar UTF-8 como si fuera una codificación de un solo byte convierte un carácter de 3 bytes en tres símbolos sin relación, y quitar un byte del principio desplaza todos los caracteres siguientes. Los dos fallos parecen puntuación aleatoria, y ambos se diagnostican mirando los bytes y no los caracteres.

Mantén intactos los grupos de ocho

Copia grupos completos de 8 dígitos. Empezar a pegar desde la mitad de un byte produce una secuencia que el decodificador no puede interpretar, y el error que aparece después es correcto pero no dice de forma evidente dónde empezó el corte.

Preguntas frecuentes

¿Cómo decodifico binario y lo devuelvo a texto?

Parte el binario en grupos de 8 dígitos, toma cada grupo como 1 byte y decodifica los bytes como UTF-8. La letra A es 01000001, así que un solo grupo decodifica a un solo carácter; una secuencia más larga da una cadena más larga, con algunos caracteres repartidos entre varios grupos.

¿Por qué recibo un error en vez de caracteres raros?

Porque la secuencia de bytes no es UTF-8 válido: puede estar cortada, desordenada o no ser texto en absoluto. Rechazarla es deliberado; la alternativa sería sustituir caracteres, lo que produce una salida que parece un problema de decodificación incluso cuando el problema real es que esos bytes nunca fueron texto.

¿Puedo pegar binario sin espacios entre los bytes?

Sí. Una ristra continua cuya longitud sea múltiplo de 8 se parte en bytes automáticamente, así que el binario copiado de un origen que omite separadores se convierte sin reformatearlo. Las formas con espacios y sin ellos significan exactamente lo mismo.

¿Qué significa un byte por encima de 127 por sí solo?

Que forma parte de un carácter multibyte y no es un carácter en sí mismo. Un byte suelto en ese rango no tiene significado UTF-8 válido y se rechaza, que es la respuesta correcta: el carácter al que pertenecía está incompleto.

¿Funciona con texto en cualquier idioma?

Sí, con todo lo que UTF-8 pueda representar, que es prácticamente cualquier sistema de escritura en uso: alfabetos latinos con tilde, cirílico, árabe, chino, japonés, coreano y emoji. Una secuencia generada por la herramienta de texto a binario de este sitio siempre vuelve a decodificarse exactamente al texto de partida.

Copia el código de abajo y pégalo en tu sitio web para añadir este convertidor.

<!-- Binario a texto -->
<iframe src="https://unitflow.net/es/embed/binary-to-text" title="Binario a texto" width="100%" height="420" loading="lazy" style="border:0;max-width:100%;display:block"></iframe>
<p><a href="https://unitflow.net/es/binary-to-text" target="_blank" rel="noopener">Con tecnología de UnitFlow</a></p>