tigtools

Conversor de JSON para CSV

Cole um array JSON e obtenha uma tabela CSV que você pode abrir no Excel, Google Sheets ou LibreOffice. A conversão acontece no seu navegador.

Executado no seu navegador Sem cadastro

Delimitador

Como usar

  1. Cole um array JSON de objetos, abra um arquivo .json ou clique em “Testar um exemplo”.
  2. Escolha o delimitador esperado pela sua planilha e como representar os arrays dentro dos objetos.
  3. Confira a prévia do CSV. Cada objeto vira uma linha; os campos aninhados viram colunas, como address.city.
  4. Copie o CSV ou baixe-o como arquivo .csv.

Como funciona

Cada item do array de nível superior vira uma linha. As colunas reúnem todas as chaves, na ordem em que aparecem pela primeira vez, para que objetos com campos diferentes ainda fiquem alinhados; campos ausentes ou com valor null geram uma célula vazia. Objetos aninhados são achatados usando caminhos separados por pontos: {"address": {"city": "Oslo"}} vira uma coluna chamada address.city. Se a raiz for um único objeto, o resultado terá uma linha. Arrays de valores simples (como [1, 2, 3]) geram uma única coluna chamada value.

Arrays dentro de objetos podem ser representados de três formas: como texto JSON em uma célula (["a","b"]), unidos em uma única célula (a; b) ou distribuídos em colunas numeradas (tags.0, tags.1). Use a última opção quando todas as linhas tiverem listas semelhantes e curtas.

O resultado segue o RFC 4180: um campo fica entre aspas duplas quando contém o delimitador, uma aspa dupla ou uma quebra de linha, e as aspas dentro dele são duplicadas. As linhas terminam com quebras de linha CRLF. Em muitas configurações regionais europeias, o Excel espera ponto e vírgula em vez de vírgula, pois a vírgula é o separador decimal. O Excel também pode alterar números longos, zeros à esquerda e textos que parecem datas ao abrir um arquivo CSV; importe o arquivo como texto se os valores precisarem ser preservados exatamente. Números maiores que 2^53 perdem precisão quando o JSON é analisado.

Exemplos

Exportar usuários de uma API

Uma API retorna [{"id":1,"name":"Ada","address":{"city":"London"}}, …]. O CSV tem as colunas id, name e address.city, prontas para ordenar e filtrar em uma planilha.

Texto com vírgulas e aspas

Um nome como Alan "AT" Turing vira "Alan ""AT"" Turing", e uma cidade como Wilmslow, Cheshire fica entre aspas, para que os programas de planilha mantenham cada valor na própria célula.

Abrir no Excel em alemão ou francês

Escolha ponto e vírgula como delimitador e ative o BOM UTF-8. Assim, o Excel separa as colunas corretamente e exibe caracteres como ä e é sem distorcê-los.

Perguntas frequentes

O que acontece com JSON profundamente aninhado?

Objetos aninhados são achatados em todos os níveis e viram nomes de coluna com caminhos separados por pontos, como order.customer.address.zip. Os arrays seguem a opção escolhida: texto JSON, valores unidos ou uma coluna por item.

Por que algumas células ficam vazias?

Uma célula fica vazia quando o objeto não tem a chave ou quando o valor é null. As colunas são definidas em conjunto por todos os objetos; portanto, mesmo uma chave presente em apenas alguns objetos terá uma coluna.

Qual delimitador devo usar?

A vírgula é o padrão. Use ponto e vírgula no Excel em configurações regionais que usam vírgula como separador decimal (em boa parte da Europa e da América Latina) e tabulação quando os dados contêm muitas vírgulas ou quando você quer colá-los diretamente em uma planilha.

É possível converter CSV de volta para JSON?

Sim, com o conversor de CSV para JSON deste site. Atenção: o achatamento não é totalmente reversível. Os nomes de coluna com caminhos separados por pontos voltam como chaves simples, como "address.city", e não como objetos aninhados.

Privacidade

A conversão é feita no seu navegador. Seu JSON e o resultado em CSV não são enviados, armazenados nem incluídos em análises.