O que este conversor faz
Texto e hexadecimal são duas formas de observar os mesmos bytes. As pessoas leem carateres, enquanto protocolos, depuradores e formatos de ficheiro costumam apresentar cada byte com dois dígitos hexadecimais. A ferramenta codifica texto em UTF-8 e, no sentido inverso, valida e descodifica os bytes como UTF-8.
Isto importa para além do ASCII básico. Letras acentuadas, carateres chineses e emoji podem ocupar dois, três ou quatro bytes. O resultado corresponde aos bytes vistos num pedido, ficheiro UTF-8, campo de base de dados ou vetor de bytes.
Como usar
Escolha a direção, introduza a origem e calcule. As opções de formato afetam apenas a codificação.
- Selecione Texto para hexadecimal para obter bytes UTF-8 ou Hexadecimal para texto para os descodificar.
- Cole texto Unicode ou bytes com dois dígitos; espaços, dois-pontos, vírgulas, ponto e vírgula, hífens e sublinhados são aceites.
- Na codificação, escolha letras maiúsculas ou minúsculas e o separador.
- Clique em Calcular e verifique resultado, bytes e carateres.
- Copie para código, documentação ou análise de pacotes, mantendo os bytes originais quando a fonte for incerta.
Exemplos de UTF-8 e hexadecimal
Os casos mostram que um caráter nem sempre ocupa um byte.
| Entrada | Saída | Explicação |
|---|---|---|
| Hello | 48 65 6C 6C 6F | Cada letra latina básica ocupa um byte UTF-8. |
| café | 63 61 66 C3 A9 | A letra é usa os bytes C3 A9. |
| 你好 | E4 BD A0 E5 A5 BD | Cada caráter chinês usa três bytes UTF-8. |
| 👋 | F0 9F 91 8B | O emoji aparece como um símbolo, mas usa quatro bytes. |
| 00 41 0A | NUL, A, nova linha | Controlos podem ficar invisíveis ou alterar o layout. |
| C3 28 | Erro | C3 exige um byte de continuação válido, e 28 não é um. |
Formatos aceites
O modo texto usa TextEncoder e preserva quebras de linha, tabulações, marcas combinantes, emoji e vários idiomas. A contagem de carateres usa pontos de código; a de bytes mede a carga UTF-8 real.
O modo hexadecimal trabalha por bytes. Aceite sequência compacta, prefixos 0x e separadores comuns. Depois de remover o formato, devem restar pares completos de dígitos.
- São aceites 0-9 e A-F em maiúsculas ou minúsculas.
- O prefixo 0x é opcional e pode preceder cada byte.
- A descodificação estrita não esconde dados inválidos com carateres de substituição.
- Entrada vazia produz saída vazia sem contacto com servidor.
Como o algoritmo funciona
TextEncoder gera um Uint8Array UTF-8. Cada byte é convertido para base 16, recebe zero à esquerda e é unido pelo separador escolhido.
Para descodificar, os separadores permitidos são removidos, os dígitos e o comprimento par são validados e cada par se transforma num byte. TextDecoder em modo fatal rejeita sequências UTF-8 inválidas.
A ferramenta não tenta adivinhar UTF-16, Latin-1, GBK ou outra codificação; a escolha explícita de UTF-8 evita ambiguidade.
Usos práticos
A visão hexadecimal ajuda quando um sistema expõe bytes em vez de texto.
Depurar APIs
Verifique espaços, quebras, nomes não ASCII e emoji em pedidos.
Inspecionar ficheiros
Leia trechos UTF-8 em ficheiros binários, exportações e dumps.
Preparar literais
Gere vetores de bytes, testes e exemplos de protocolo.
Ensinar Unicode
Compare carateres visíveis, pontos de código e bytes UTF-8.
Erros e limites
Falhas geralmente vêm da confusão entre carateres e bytes ou do uso de outra codificação.
Quantidade ímpar de dígitos
Um byte precisa de dois dígitos; recupere o zero inicial ou o meio byte ausente.
Codificação incorreta
Bytes UTF-16, Latin-1, Windows-1252 ou GBK podem não ser UTF-8 válido.
Controlos invisíveis
NUL, tabulação e nova linha podem estar corretos sem aparecer.
Texto visualmente igual
Formas Unicode diferentes podem parecer iguais e produzir bytes distintos.
Diferenças para ferramentas relacionadas
Escolha conforme a representação necessária.
Texto para binário
Mostra os mesmos bytes em grupos de oito bits; hexadecimal é mais compacto.
Tabela ASCII
Cobre apenas os primeiros 128 códigos, não sequências UTF-8 completas.
Base64
Base64 serve para transporte; hexadecimal facilita examinar bytes.
Conversor de bases
Trata a entrada como um inteiro; aqui cada par representa um byte ordenado.