O que esta ferramenta faz
Uma string JSON é um texto entre aspas duplas em que alguns caracteres são escritos com uma barra invertida: uma aspa dupla vira \", uma barra invertida vira \\, uma quebra de linha vira \n e uma tabulação vira \t. Esta ferramenta pega o seu texto e o escreve como esse tipo de string. É a mesma coisa que o JSON.stringify faz no JavaScript quando você entrega uma string a ele.
Você precisa disso quando um documento JSON tem que carregar outro, ou qualquer texto com aspas e quebras de linha, dentro de um único campo. Escrever os escapes à mão é lento e fácil de errar. Uma barra invertida esquecida invalida o payload inteiro.
Como usar
- Cole um texto ou JSON na caixa da esquerda, clique em Abrir arquivo ou em Exemplo.
- A string escapada aparece à direita enquanto você digita.
- Escolha as opções de que precisar:
- Compactar o JSON antes tira a formatação de um JSON válido antes de escapá-lo. Vem ligada por padrão.
- Envolver em aspas acrescenta as aspas duplas de fora. Desligue se você vai colar em um lugar que já tem aspas.
- Escapar não ASCII como \u escreve letras acentuadas, símbolos e outros caracteres fora do ASCII como códigos
\u.
- Clique em Copiar, ou em Baixar para salvar o resultado como arquivo de texto.
A linha abaixo das caixas informa se a entrada era um JSON válido e quantos caracteres o resultado tem.
Exemplos
Texto simples com aspas e uma quebra de linha:
He said "hello"
then left.
vira:
"He said \"hello\"\nthen left."
JSON formatado com Compactar o JSON antes ligado:
{
"name": "Ada",
"tags": ["admin", "dev"]
}
vira:
"{\"name\":\"Ada\",\"tags\":[\"admin\",\"dev\"]}"
Com Compactar o JSON antes desligado, o recuo é mantido e escapado, então { seguido de uma quebra de linha e "name": "Ada" vira:
"{\n \"name\": \"Ada\"\n}"
Um caminho do Windows, em que cada barra invertida é dobrada:
"C:\\Users\\Ada\\notes.txt"
Caracteres não ASCII
O JSON aceita qualquer caractere Unicode dentro de uma string, então Café 東京 é válido do jeito que está:
"Café 東京"
Alguns sistemas mais antigos, terminais ou campos limitados por bytes só aceitam ASCII. Com Escapar não ASCII como \u ligado, o mesmo texto vira:
"Caf\u00e9 \u6771\u4eac"
Em português, isso afeta todas as letras acentuadas e o ç: “Promoção” vira "Promo\u00e7\u00e3o". Os caracteres fora do Plano Multilíngue Básico, como a maioria dos emojis, são escritos com dois códigos (um par substituto). Um emoji de rosto sorridente vira "\ud83d\ude00". Qualquer parser de JSON transforma esses códigos de volta nos caracteres originais.
Sem as aspas de fora
Desligue Envolver em aspas quando a string for para um template, um campo de formulário ou um par de aspas que já existe. O texto Tab seguido de uma tabulação e de here sai assim:
Tab\there
Como funciona
A ferramenta usa o JSON.stringify do próprio navegador, então o escape segue exatamente o padrão JSON. Antes disso, se Compactar o JSON antes estiver ligado e a entrada começar com { ou [, ela tenta ler a entrada como JSON. Se der certo, o JSON é escrito sem espaços, mantendo os números exatamente como você escreveu. Depois, o texto inteiro é escapado como uma única string. Nada é enviado para um servidor.
Dicas e limites
- O resultado é uma string JSON, e não um template literal do JavaScript ou uma string de shell. Os shells e algumas linguagens precisam de outra camada de aspas por cima.
- Se você aplicar o stringify de novo no resultado, recebe uma string escapada duas vezes. Às vezes é isso que uma API espera, mas normalmente é sinal de bug.
- Entradas muito grandes funcionam. O trabalho é feito localmente e a velocidade depende do seu aparelho.
Outras formas de fazer isso
JavaScript. JSON.stringify(text) devolve a string escapada. Para embutir um objeto, use JSON.stringify(JSON.stringify(obj)).
Python. json.dumps(text) faz o mesmo com uma string. Passe ensure_ascii=False para manter os caracteres não ASCII como estão, já que o padrão os escapa. Para textos em português, essa opção deixa o resultado bem mais legível.
jq. jq -Rs . file.txt lê um arquivo inteiro como texto puro e o mostra como uma única string JSON.
Ferramentas relacionadas
Para transformar uma string escapada de volta em texto ou JSON legível, use o JSON unstringify. Para conferir ou formatar o JSON antes, use o formatador JSON. Para montar JSON a partir de uma planilha, use a ferramenta de converter CSV para JSON.