JSON ↔ CSV Converter
Understand JSON ↔ CSV Converter
Este conversor transforma um array JSON de objetos em uma tabela CSV e lê uma tabela CSV de volta para JSON.
How it works
Cada objeto do array vira uma linha e as chaves do objeto viram a linha de cabeçalho, e é por isso que o JSON precisa ser um array de objetos planos para que uma tabela faça sentido. Os campos são colocados entre aspas do jeito que a RFC 4180 especifica: qualquer valor contendo vírgula, aspa dupla ou quebra de linha é envolvido em aspas duplas, e uma aspa dupla interna é escrita duas vezes — Ela disse "oi" vira "Ela disse ""oi""". Na leitura do CSV, esse tratamento de aspas é desfeito e todo campo chega como string, porque o CSV não carrega informação de tipo alguma.
When to use it
- Levar uma resposta de API para uma planilha, para alguém que não quer ler JSON.
- Transformar um CSV exportado em fixtures JSON para testes ou um script de seed.
- Achatar uma exportação de logs ou de eventos para que ela possa ser ordenada e filtrada no Excel ou no Google Sheets.
- Entregar uma amostra de dados a um colega no formato que a ferramenta dele de fato abre.
Watch out for
- O CSV é plano e o JSON não é. Um objeto aninhado ou um array dentro de uma linha não tem célula onde morar, então ache essas chaves antes de converter, e não depois.
- Os tipos se perdem nos dois sentidos. Um ID com zero à esquerda como 007, um ID numérico longo e uma data voltam todos como strings — e uma planilha pode reformatá-los no momento em que o arquivo abre.
- Um campo que começa com =, +, - ou @ é tratado como fórmula pelo Excel e pelo Google Sheets. Isso é injeção de CSV, e passa a importar assim que os valores vieram de usuários.
- Não existe um dialeto único de CSV. O ponto e vírgula é o delimitador normal em localidades que usam a vírgula como separador decimal, e o Excel muitas vezes precisa de uma marca de ordem de bytes UTF-8 para exibir corretamente os caracteres acentuados.
Frequently Asked Questions
Como converter JSON para CSV?
Cole um array de objetos e escolha um delimitador. Toda chave de todas as linhas vira uma coluna, na ordem em que apareceu pela primeira vez, então uma chave que só aparece no último registro ainda ganha uma coluna em vez de ser descartada. Objetos aninhados são escritos como JSON dentro da célula.
Como o conversor lida com vírgulas dentro dos valores?
Conforme a RFC 4180, qualquer campo que contenha o delimitador, uma aspa dupla ou uma quebra de linha é envolvido em aspas duplas, e as aspas dentro do valor são duplicadas. Esse é o formato que o Excel, o Google Sheets e todo leitor de CSV padrão esperam.
Por que meus números viram strings ao converter CSV para JSON?
O CSV não tem tipos — todo campo é texto —, então o conversor mantém os valores como strings, a menos que você ligue a conversão de tipos. Mesmo assim, valores com zeros à esquerda continuam strings, porque um CEP ou um número de conta transformado em número é um bug de perda de dados.
How to Use JSON ↔ CSV Converter
- Paste or type your input in the input area above.
- The tool processes your input automatically or click Run.
- Copy or download the result using the action buttons.
- Use Ctrl+Enter to run quickly from the keyboard.