§

Cole o array JSON que você quer converter para CSV.

Delimitador
Colunas de cabeçalho
A primeira linha é cabeçalho
Objetos aninhados
Coerção de tipos
§

Output

csv

Converter JSON para CSV é tarefa diária no ecossistema brasileiro de dados: os microdados do IBGE chegam via API em JSON antes que uma equipe os transforme em CSV para carregar no BigQuery, as bases do portal dados.gov.br são exportadas em JSON que analistas precisam abrir no Excel, e os arquivos do Tesouro Transparente são achatados de JSON para CSV por equipes de finanças. Equipes que integram Pix e Open Finance Brasil exportam listagens de transações de JSON (formato da API do Banco Central) para CSV (que auditores esperam). Em Portugal, os datasets do dados.gov.pt e as séries do INE repetem o mesmo padrão. Este conversor executa o achatamento localmente, mantendo dados fiscais ou contábeis fora de servidores de terceiros.

O que é conversão de JSON para CSV?

JSON (JavaScript Object Notation, RFC 8259) é um formato de texto em forma de árvore para dados estruturados; CSV (Comma-Separated Values, RFC 4180) é um formato de texto plano e tabular. Converter JSON para CSV achata essa árvore em linhas e colunas, para que um conjunto de dados que começou como resposta de API seja aberto facilmente em uma planilha sem redigitar uma única linha.

Como funciona a conversão de JSON para CSV?

Cada conversão é executada localmente no seu navegador. Os passos principais são:

  1. JSON.parse valida a entrada e confirma que é um array de registros no nível superior. Um erro claro é exibido se os colchetes, vírgulas ou chaves entre aspas não estiverem corretos.
  2. O escritor deriva colunas de cabeçalho dos seus registros: a união de todas as chaves vistas, ou apenas as do primeiro registro, dependendo do toggle.
  3. Objetos aninhados são achatados em chaves com ponto (user.id, user.city) ou serializados como uma única célula JSON, à sua escolha. Arrays dentro de objetos são JSON-stringificados em ambos os casos.
  4. Cada célula é escapada conforme RFC 4180: qualquer valor contendo o delimitador, uma aspas dupla ou uma quebra de linha é envolto em aspas, e aspas internas são duplicadas. As linhas são unidas com terminadores \r\n.
  5. O CSV aparece na área de texto somente leitura, e um link de download cria um Blob com o tipo MIME text/csv;charset=utf-8 para que você possa salvar o arquivo com um clique.

Por que converter JSON para CSV com esta ferramenta?

  • Privacidade: cada passagem de análise, achatamento e escrita acontece no seu navegador. Os dados nunca chegam aos nossos servidores.
  • Correção: o escritor segue RFC 4180. Um valor como Bob, Jr. vira "Bob, Jr." — uma única célula entre aspas, não duas colunas — e quebras de linha ou aspas embutidas sobrevivem à conversão intactas.
  • Pronto para planilha: a saída cola direto no Excel ou Google Sheets, com colunas de cabeçalho já derivadas das suas chaves, sem limpeza manual antes de os dados serem utilizáveis.
  • Flexibilidade: achate objetos aninhados em chaves com ponto ou serialize-os como uma única célula, escolha qualquer delimitador para dialetos CSV que não usam vírgula, e decida se os cabeçalhos vêm de todas as chaves ou apenas do primeiro registro.

Quais são as aplicações comuns da conversão de JSON para CSV?

Achatar JSON em CSV aparece em todo o trabalho com dados e ferramentas:

  • Exportação de dados: transformar uma resposta de API em um arquivo CSV que sua equipe de finanças, operações ou produto possa abrir no Excel ou Google Sheets sem escrever código.
  • Relatórios: jogar o resultado de uma consulta JSON em uma planilha para uma tabela dinâmica, um gráfico ou uma coluna de fórmulas. Esse tipo de trabalho é penoso com JSON bruto.
  • Revisão em planilha: achatar uma configuração JSON aninhada (ajustes, feature flags, variantes A/B) em CSV para que revisores não técnicos possam ler e editar célula a célula.

Como é um exemplo de conversão de JSON para CSV?

Cole [{"name":"Alice","age":30},{"name":"Bob, Jr.","age":25}], deixe o delimitador em vírgula e pressione CONVERTER. Você obtém três linhas: uma linha de cabeçalho name,age, uma linha de dados Alice,30 e uma linha "Bob, Jr.",25. Essa vírgula embutida é exatamente o que atrapalha um join ingênuo — aqui ela aciona o uso de aspas conforme RFC 4180, mantendo a célula inteira.

Este conversor de JSON para CSV roda inteiramente no meu navegador?

Sim. Cada passagem de análise, achatamento e escrita roda localmente como JavaScript dentro da sua aba do navegador. A ferramenta não chama fetch, XMLHttpRequest ou navigator.sendBeacon em nenhum momento — seus payloads JSON nunca chegam aos nossos servidores, a um conversor de terceiros ou a qualquer pipeline de analytics. A ferramenta também funciona offline depois que a página carregou, porque é um bundle estático HTML/CSS/JS sem dependência de API em tempo de execução.

Qual é o tamanho máximo de entrada que este conversor consegue processar?

O conversor armazena toda a entrada na memória e roda de forma síncrona na thread principal, então os limites práticos dependem do seu dispositivo. Arrays JSON de até cerca de 10 MB (aproximadamente 100.000 registros típicos) convertem sem pausa perceptível em um laptop moderno. Além disso, a interface pode travar enquanto o escritor executa. Conversão em streaming usando um Web Worker mais um escritor por chunks é um próximo passo planejado — por enquanto, divida conjuntos de dados muito grandes antes de colá-los.

Como o escritor lida com valores que contêm vírgulas, aspas ou quebras de linha?

Conforme RFC 4180. Qualquer valor contendo o delimitador ativo, uma aspas dupla, um CR ou um LF é envolvido em aspas duplas, e aspas internas são duplicadas. Assim um nome como Bob, Jr. vira a célula única "Bob, Jr." em vez de transbordar para duas colunas, e uma descrição multilinha permanece em uma única célula em vez de quebrar a linha. Esta é a parte em que um join(',') ingênuo erra.

O que acontece com objetos JSON aninhados ao converter para CSV?

Objetos aninhados são tratados conforme o interruptor Objetos aninhados. No modo Achatar (o padrão), as chaves são unidas com pontos — {"user":{"id":1,"city":"Paris"}} vira as colunas user.id e user.city. No modo Serializar, o objeto aninhado é serializado como um único valor de célula JSON com o escape de aspas da RFC 4180 intacto, preservando sua estrutura para ida e volta. Arrays dentro de objetos são serializados como JSON em ambos os modos.

Quais delimitadores a saída CSV pode usar?

Quatro: vírgula (,, o padrão da RFC 4180), ponto e vírgula (;, comum em locales europeus), tabulação (\t, o dialeto TSV) e barra vertical (|). Escolha o que sua ferramenta de destino espera. O escritor escapa qualquer célula que contenha o delimitador escolhido, para que a escolha nunca corrompa um valor.

Este conversor JSON para CSV achata seu array e emite saída em conformidade com a RFC 4180 que você pode colar direto em uma planilha, em um relatório ou em uma revisão de código — sem enviar um único byte. Precisa da direção inversa? O conversor de CSV para JSON faz o caminho de volta.