tomai
Entrar
Grátis · Ferramentas de texto

Conversor Unicode

Texto ↔ escapes \uXXXX, mais um inspetor de pontos de código por caractere

Texto
Escapes Unicode
Inspetor de caracteres
Car. Ponto de código Bytes UTF-8

O que é um conversor Unicode?

Por trás de cada caractere na tela existe um ponto de código numérico — uma letra, um emoji, um caractere chinês têm cada um o seu — e o UTF-8 codifica esses pontos de código em bytes. Na maioria das vezes essa camada fica invisível, mas ela aparece em strings JSON escapadas, em texto mojibake e em bugs de codificação. Esta ferramenta converte texto em sequências de escape \uXXXX e vice-versa, e inspeciona cada caractere: ponto de código, valor decimal e bytes UTF-8 brutos, tudo atualizado enquanto você digita. Ela é voltada a desenvolvedores, tradutores e a quem já encarou uma string que virava lixo na tela.

O que ele decodifica e inspeciona

  • 🔄 Texto para sequências de escape \uXXXX, e de volta para texto
  • 🔍 Inspetor por caractere: ponto de código U+XXXX, valor decimal e bytes UTF-8
  • 🔢 Trata caracteres fora do plano básico, como emojis, por ponto de código
  • ⚡ Resultados atualizados em tempo real enquanto você digita

Quando a camada de codificação importa

  • Depurar uma string que aparece como garranchos em um e-mail ou banco de dados
  • Escrever JSON à mão com sequências de escape para texto não ASCII
  • Entender por que um emoji ou caractere CJK quebra um sistema antigo
  • Verificar quais bytes um arquivo realmente armazena para um dado caractere

Tudo roda localmente no seu navegador; nenhum texto é enviado. O escape afeta apenas caracteres não ASCII e de controle, então a saída em ASCII puro permanece legível.

Última atualização · 2026-09-01

Pontos de código, substitutos e larguras UTF-8

  • U+1F600 é um caractere, duas unidades UTF-16 (par substituto), quatro bytes UTF-8 — três comprimentos para um mesmo emoji.
  • \uXXXX codifica UTF-16; \u{...} pontos completos — na linguagem errada o emoji se parte em silêncio.
  • A visão em bytes mostra exatamente o que armazenamento e rede verão.

Um caractere não é um byte

Escapes nos dois sentidos

O texto puro vira sequências \uXXXX com hexadecimal de quatro dígitos em maiúsculas, enquanto os caracteres ASCII imprimíveis passam intactos; colar escapes de volta os converte em caracteres novamente.

🔒

Inspetor caractere por caractere

Cada code point da sua string aparece com sua forma U+XXXX, seu valor decimal e seus bytes UTF-8 brutos — emojis, caracteres chineses e códigos de controle incluídos, até os 200 primeiros.

🎯

Para decifrar mojibake

Quando um payload JSON mostra \u4f60\u597d em vez de texto, cole aqui para ler a string real, ou transforme qualquer saída corrompida em escapes para ver exatamente quais bytes estão errados.

Perguntas frequentes

Qual é a diferença entre um ponto de código e uma unidade de código UTF-16?

A maioria dos caracteres cabe em uma unidade de código de 16 bits, mas os que estão fora do plano multilíngue básico (muitos emojis, por exemplo) precisam de duas — um "par substituto". O inspetor lê por ponto de código, então esses casos aparecem corretamente em uma única linha, não em duas.

Por que eu precisaria de escapes \uXXXX?

É a forma padrão de representar caracteres não ASCII dentro de strings JSON, literais de string do JavaScript e muitos formatos de arquivo de configuração/propriedades que não aceitam texto UTF-8 bruto.

Meu texto é enviado para algum lugar?

Não — tudo é executado no seu navegador com JavaScript simples. Nada do que você digita é enviado a um servidor.

Por que meu emoji aparece como duas caixas estranhas em certos logs?

O logger imprimiu o par substituto como dois escapes separados (D83D DE00). Qualquer coisa que os trate isoladamente os quebra; junte-os ou mude o log para escapes de ponto de código como \u{1F600}, e a carinha volta intacta.

Ferramentas relacionadas

Ferramentas relacionadas