Codificador / decodificador de escapes Unicode
Converta caracteres em escapes \uXXXX e de volta, com pares substitutos corretos para emoji e caracteres do plano suplementar — mais ponto de código, bytes UTF-8 e unidades UTF-16 por caractere.
| Caractere | Ponto de código | bytes UTF-8 | unidades UTF-16 |
|---|---|---|---|
| 你 | U+4F60 | 0xE4 0xBD 0xA0 | U+4F60 |
| 好 | U+597D | 0xE5 0xA5 0xBD | U+597D |
| , | U+002C | 0x2C | U+002C |
| U+0020 | 0x20 | U+0020 | |
| 😀 | U+1F600 | 0xF0 0x9F 0x98 0x80 | U+D83D |
| U+0020 | 0x20 | U+0020 | |
| A | U+0041 | 0x41 | U+0041 |
O que é
Cada caractere vive numa posição numerada: o A é U+0041, o 中 é U+4E2D. Em JavaScript escrevem-se como escapes \uXXXX. A reviravolta: os emoji e caracteres raros vivem além das primeiras 65536 casas, então um emoji não é um \uXXXX mas um par, chamado par substituto: o sorriso vira \uD83D\uDE00. Esta ferramenta trata ambos os planos corretamente e mostra o ponto de código, os bytes UTF-8 e as unidades UTF-16 de cada caractere.
Notas e curiosidades
Por que um sorriso precisa de dois escapes? Porque o sistema foi desenhado quando 65536 casas pareciam infinitas, e os emoji chegaram décadas depois. Os engenheiros então remendaram: reservar o intervalo D800–DFFF. Um substituto alto seguido de um baixo significa um único caractere grande. O remendo funcionou tão bem que hoje ninguém se atreve a tirá-lo.
Origem e história
O Consórcio Unicode publicou a primeira norma Unicode em outubro de 1991. A versão 2.0 (julho de 1996) elevou o limite para mais de um milhão de posições e introduziu o UTF-16 com pares substitutos, sob a liderança de Peter Hartke e do Comitê Técnico do Unicode — por isso os emoji hoje sempre formam dois escapes.
Palavras-chave relacionadas
Feedback
Encontrou um problema em uma ferramenta ou tem uma sugestão? Envie um e-mail para nós — lemos todas as mensagens.
