Códigos, bytes e escapes
O Unicode dá a cada caractere um número chamado ponto de código, escrito U+ com pelo menos quatro dígitos hexadecimais: A é U+0041, ç U+00E7, € U+20AC e 😀 U+1F600. Esse número é o mesmo em qualquer lugar. O que muda é como ele é guardado: o UTF-8 usa de um a quatro bytes, o UTF-16 (usado dentro do JavaScript, Java e Windows) usa uma ou duas unidades de 16 bits, e linguagens de programação e o HTML têm cada um sua sintaxe de escape.
Este conversor traduz entre eles. Escolha U+ para documentação, escapes \u para strings de JavaScript, JSON e Java, HTML para referências &#x…; e decimal para bancos de dados e algumas APIs. Cole qualquer um desses formatos para decodificar.
Exemplo resolvido
😀 é U+1F600. Em UTF-8 são quatro bytes, F0 9F 98 80; em UTF-16 duas unidades, D83D DE00, por isso "😀".length é 2 no JavaScript. Como escape moderno do JavaScript ele é \u{1F600}, em HTML 😀 e em decimal 128512.
Como funciona
A página percorre o texto por ponto de código, então um emoji conta como um caractere mesmo que o JavaScript o guarde em duas unidades UTF-16. Cada ponto de código é escrito na notação escolhida, e a tabela mostra o caractere com o código, os bytes UTF-8 e as unidades UTF-16. Para decodificar, ela procura códigos U+, escapes \u e \u{…}, referências HTML numéricas, valores 0x e números decimais na entrada, junta pares substitutos e recusa valores fora do intervalo do Unicode. Tudo roda nesta aba.
Perguntas frequentes
O que é um ponto de código?
O número que o Unicode dá a um caractere, como U+0041 para A. Ele não depende de como o texto é guardado.
Por que o JavaScript diz que um emoji tem tamanho 2?
Strings do JavaScript contam unidades UTF-16, e caracteres acima de U+FFFF precisam de duas (um par substituto).
Qual a diferença entre \\u00E7 e \\u{1F600}?
\uXXXX tem exatamente quatro dígitos, o bastante para U+0000–U+FFFF. \u{…} aceita qualquer código e é necessário acima de U+FFFF.
Dá para ver os nomes dos caracteres?
Aqui não. A lista completa de nomes do Unicode é grande; a página mostra códigos, bytes e escapes.
Fontes
Revisado em 17 de out. de 2026 · vetores de teste fixtures/dev/unicode-converter/