Conversor de texto para hexadecimal
Digite um texto para ver seus bytes UTF-8 em hexadecimal, ou cole hexadecimal para ler o texto que ele forma. Letras acentuadas e emojis voltam corretamente, você escolhe a saída com espaços, contínua ou com prefixo 0x, e uma contagem de bytes mostra o tamanho. Gratuito, sem cadastro, e a conversão roda no seu navegador.
Direção
Agrupamento da saída hexadecimal
Como usar o conversor de texto para hexadecimal
- 1. Escolha uma direção. Detecção automática decodifica apenas entradas que claramente são hexadecimal, ou seja, bytes de dois dígitos separados por espaço (
48 65 6c) ou bytes com prefixo 0x; todo o resto é codificado. Texto → Hexadecimal e Hexadecimal → Texto forçam uma direção, e o título do resultado indica para onde foi a conversão. - 2. Escolha o agrupamento hexadecimal. Com espaços (
48 65), contínuo (4865) ou com prefixo 0x (0x48 0x65). Isso afeta apenas a saída de texto para hexadecimal. - 3. Digite ou cole. O resultado e uma contagem de bytes aparecem enquanto você digita.
- 4. Copie. Copiar resultado copia a saída; Limpar esvazia a caixa.
Como o texto vira hexadecimal
Computadores guardam texto como bytes, e um byte tem oito bits — exatamente dois dígitos hexadecimais, já que cada dígito hexadecimal representa quatro bits. A ferramenta primeiro codifica seu texto em UTF-8 (RFC 3629), que usa de um a quatro bytes por caractere, e depois escreve cada byte como dois dígitos hexadecimais minúsculos. Caracteres ASCII simples ocupam um byte e mantêm seus valores conhecidos, então A é 41. Todo o resto ocupa mais:
| Caractere | Ponto de código | Bytes UTF-8 (hexadecimal) | Bytes |
|---|---|---|---|
| A | U+0041 | 41 | 1 |
| é | U+00E9 | c3 a9 | 2 |
| ☕ | U+2615 | e2 98 95 | 3 |
| 😀 | U+1F600 | f0 9f 98 80 | 4 |
Por isso a saída hexadecimal pode ser mais longa que o texto, e por que ela difere dos códigos decimais de caracteres: é é o ponto de código único 233, mas seus dois bytes são c3 a9.
Exemplo prático
Entrada
Hello, World!
Com espaços
48 65 6c 6c 6f 2c 20 57 6f 72 6c 64 21
Contínuo
48656c6c6f2c20576f726c6421
Com prefixo 0x
0x48 0x65 0x6c 0x6c 0x6f 0x2c 0x20 0x57 0x6f 0x72 0x6c 0x64 0x21
Tamanho
13 bytes
Na volta, 63 61 66 c3 a9 decodifica para café, e e2 98 95 para ☕. Ao decodificar, espaços, vírgulas, quebras de linha e prefixos 0x são ignorados, então você pode colar hexadecimal de um depurador, de um dump de pacotes ou de código-fonte; o que sobrar precisa ser apenas dígitos hexadecimais, em pares.
Como ler os erros e surpresas
- «A entrada contém caracteres que não são dígitos hexadecimais (0-9, a-f).» Há algo diferente de 0–9 e a–f (em qualquer caixa) na entrada, além de separadores e
0x. - «A entrada hexadecimal tem um número ímpar de dígitos.» Cada byte precisa de dois dígitos, então um dígito faltando ou sobrando deixa o comprimento ímpar. Verifique se falta um zero à esquerda (
5deveria ser05). - Caracteres de substituição (�). Bytes que não são UTF-8 válido — um
ffisolado, por exemplo — são decodificados como o caractere de substituição em vez de causar falha. Se você esperava texto, os dados provavelmente estão em outra codificação ou não são texto. - A detecção automática precisa de separadores para reconhecer hexadecimal. Uma sequência única como
cafe,deadou2024pode ser tanto uma palavra ou um número quanto hexadecimal, então é codificada como texto. Hexadecimal contínuo como48656c6c6ftambém é lido como texto: escolha Hexadecimal → Texto para ele, ou separe os bytes com espaços. - A saída é minúscula. Mude a capitalização no seu editor se o destino precisar de maiúsculas.
Qual ferramenta você precisa?
| O mesmo texto, «Hi» | Ferramenta |
|---|---|
48 69 — bytes hexadecimais | Esta página |
01001000 01101001 — bytes binários de 8 bits | Tradutor binário |
72 105 — códigos decimais de caracteres, com uma tabela ASCII | Conversor ASCII |
SGk= — Base64, codificação de URL, entidades HTML | Codificador e Decodificador de Texto |
| Um número de uma base para outra, como 255 para FF | Conversor de bases |
Perguntas frequentes
- Como converto texto para hexadecimal?
- Digite ou cole o texto com a direção em Texto → Hexadecimal (ou deixe em Detecção automática). Cada caractere é codificado em bytes UTF-8 e cada byte aparece como dois dígitos hexadecimais, então «Hi» vira 48 69.
- Como converto hexadecimal para texto ou ASCII?
- Cole o hexadecimal com a direção em Hexadecimal → Texto. Espaços, vírgulas, quebras de linha e prefixos 0x são ignorados; os dígitos restantes precisam formar um número par. Os bytes são decodificados como UTF-8, o que, para bytes ASCII simples, dá exatamente o texto ASCII.
- Quais formatos de agrupamento existem?
- Com espaços (48 65), contínuo (4865) e com prefixo 0x (0x48 0x65). Os três são decodificados de forma idêntica com Hexadecimal → Texto selecionado (a detecção automática reconhece as formas com espaços e com prefixo 0x, mas lê o hexadecimal contínuo como texto), então escolha o que seu destino espera: com espaços para leitura, contínuo para strings de código e com prefixo para código-fonte.
- Qual codificação o conversor usa?
- UTF-8. Caracteres ASCII ocupam um byte cada; letras acentuadas, símbolos e emojis ocupam de dois a quatro bytes. Outras codificações, como UTF-16 ou Latin-1, produziriam bytes diferentes para texto não ASCII.
- Por que meu hexadecimal foi codificado em vez de decodificado?
- A detecção automática só decodifica bytes de dois dígitos separados ou bytes com prefixo 0x, porque uma sequência simples como cafe ou 2024 pode ser tanto uma palavra quanto um número. Hexadecimal contínuo como 48656c6c6f é codificado como texto; mude a direção para Hexadecimal → Texto para decodificá-lo.
- Por que vejo � no texto decodificado?
- Os bytes que você colou não são UTF-8 válido. A ferramenta mostra o caractere de substituição para cada sequência inválida, em vez de adivinhar outra codificação.
- Meu texto é enviado a um servidor?
- Não. A conversão usa o TextEncoder e o TextDecoder integrados ao seu navegador, e nada do que você digita sai do seu dispositivo.