Unicode Escape Converter Online
Converta texto para sequências de escape Unicode e de volta no seu navegador.
Para que serve
Texto Unicode para sequências de escape
Formatos JSON e JS
Gere escapes \uXXXX compatíveis com JSON, Java, C# e JavaScript ES5, ou o novo \u{} do ES6.
100% privado
A codificação e decodificação acontecem no seu navegador. Nenhum dado sai do seu dispositivo.
Suporte a emojis
Trata corretamente pares substitutos UTF-16 e pontos de código fora do BMP (emojis, CJK unificado estendido).
Instantâneo
Os resultados são atualizados em tempo real enquanto você digita ou cola conteúdo.
Como funciona
Três passos, sem complicação
Insira seu texto ou escapes
Cole o texto que você quer converter para escapes Unicode (como \u0048\u0065\u006C\u006C\u006F), ou cole as sequências de escape que você quer decodificar de volta para texto legível.
Selecione o modo de conversão
Escolha Texto para Escape para codificar ou Escape para Texto para decodificar. Você pode optar pelo formato \uXXXX (BMP) ou \u{XXXXX} (ES6, suporta emojis e caracteres fora do BMP).
Copie o resultado
O resultado aparece em tempo real. Use o botão de copiar para levá-lo à sua área de transferência.
Perguntas frequentes
Ficou com dúvidas?
São representações textuais de caracteres Unicode usando apenas caracteres ASCII. O formato \uXXXX representa um ponto de código Unicode com quatro dígitos hexadecimais (cobre o BMP, os primeiros 65.536 caracteres). Exemplos: \u0041 = A, \u00E9 = e acentuado, \u4E2D = caractere chinês de medio. São usadas quando o sistema de destino não suporta diretamente caracteres não ASCII.
\uXXXX é o formato clássico que cobre o BMP (U+0000 a U+FFFF). Funciona em JSON, Java, C#, JavaScript ES5 e Python. \u{XXXXX} é o formato estendido do ES6 (ECMAScript 2015) que suporta qualquer ponto de código Unicode, incluindo caracteres fora do BMP como emojis. Use quando precisar de compatibilidade com caracteres suplementares no JavaScript moderno.
JSON exige que arquivos sejam ASCII ou UTF-8, mas permite escapes \uXXXX para representar qualquer caractere. Isso garante interoperabilidade quando o canal de comunicação não trata bem o Unicode. Em JavaScript, escapes são úteis em strings com caracteres problemáticos, em expressões regulares e quando o código-fonte precisa ser ASCII puro por requisitos do sistema.
Emojis e muitos caracteres asiáticos adicionais estão fora do BMP (U+10000 a U+10FFFF). No formato \uXXXX são representados como pares substitutos: dois valores \uXXXX consecutivos. Com \u{XXXXX} (ES6), a confusão dos pares substitutos é evitada e o ponto de código direto é usado.
Na internacionalização (i18n), arquivos .properties do Java historicamente exigiam que caracteres não ASCII estivessem no formato \uXXXX. A ferramenta native2ascii convertia arquivos com caracteres nativos para esse formato. Desde o Java 9, arquivos .properties suportam UTF-8 diretamente. Ainda assim, muitos projetos legados mantêm o formato de escape e este conversor facilita o trabalho com eles.
Unicode: história (1991), codificação UTF-8 e escapes em linguagens de programação
O Unicode foi criado para resolver o caos de codificações incompatíveis: ASCII (1963, apenas 128 caracteres), Latin-1, Big5, Shift-JIS, KOI8-R... cada região usava seu próprio sistema. O Consórcio Unicode foi formado em 1988 e publicou a primeira versão do padrão em 1991, com o objetivo de atribuir um número único (ponto de código) a cada caractere de todos os sistemas de escrita do mundo. O Unicode 15.1 define atualmente mais de 149.000 caracteres.
O UTF-8, projetado por Ken Thompson e Rob Pike em 1992, tornou-se a codificação dominante na Internet por sua compatibilidade com ASCII e eficiência para texto ocidental. Em 2008 superou o Latin-1 como codificação mais usada na web, e desde 2012 é a codificação de mais de 90% de todas as páginas web. As sequências de escape \uXXXX permitem representar qualquer caractere Unicode dentro de strings puramente ASCII.
Cada linguagem de programação moderna tem sua própria sintaxe de escape Unicode: Python usa \uXXXX e \UXXXXXXXX, Java e C# usam \uXXXX, JavaScript ES5 usa \uXXXX com pares substitutos para o BMP estendido, ES6 introduziu \u{XXXXX} e Rust usa \u{XXXXX}. Arquivos JSON devem ser UTF-8 e permitem \uXXXX para qualquer caractere, tornando este conversor especialmente útil ao trabalhar com APIs internacionalizadas ou arquivos de configuração.