Conversor de CSV para JSON

Conversor de CSV para JSON grátis que também transforma JSON em CSV. Lida com aspas, quebras de linha dentro dos campos e arquivos do Excel separados por ponto e vírgula, direto no seu navegador. Nada é enviado.

Coloca um apóstrofo antes de textos que começam com =, +, - ou @, para o Excel não executá-los como fórmula.

O que ela faz


CSV é uma tabela escrita como texto: um registro por linha, com os campos separados por um delimitador. Parece simples, e é por isso que os conversores erram sem avisar. Uma vírgula entre aspas faz parte do texto, não é uma coluna nova; uma quebra de linha entre aspas faz parte do campo, não é um registro novo; e o Excel em português, espanhol, francês ou alemão salva com ponto e vírgula, porque nesses idiomas a vírgula é o separador decimal. Este conversor lê CSV pelas regras da RFC 4180, encontra o delimitador procurando aquele que dá a todas as linhas o mesmo número de colunas e transforma cada linha num objeto JSON com as chaves do cabeçalho. No sentido contrário, cria uma coluna para cada chave que aparece em qualquer objeto, não só no primeiro.

Como usar


  1. Cole o CSV ou o JSON, ou abra um arquivo.
  2. Confira as opções: delimitador, linha de cabeçalho e tipos de dados.
  3. Converta no sentido que precisar e depois copie ou baixe o resultado.

Perguntas frequentes


Por que meus CEPs e IDs ficaram como texto?
Porque transformá-los em números os alteraria. 007 viraria 7, e um ID com mais de 16 dígitos seria arredondado em silêncio pelo JavaScript para outro número. Só viram números os valores que sobrevivem à ida e volta sem mudar; desligue a conversão de tipos para manter tudo como texto.

Meu CSV veio do Excel e ficou tudo numa coluna só.
Provavelmente foi salvo com ponto e vírgula e lido com vírgulas. Deixe o delimitador na detecção automática, que verifica os quatro mais comuns, ou escolha ponto e vírgula você mesmo.

Por que decimais como 4,50 ficam como texto?
Num arquivo com ponto e vírgula, 4,50 provavelmente é quatro e meio, mas 1,500 pode ser um e meio ou mil e quinhentos, e adivinhar mudaria valores sem aviso. Converta-os no seu próprio programa, onde você sabe qual é o caso.

Como os objetos aninhados viram colunas?
Com o achatamento ligado, {"address": {"city": "Recife"}} vira uma coluna chamada address.city. Listas, e objetos quando o achatamento está desligado, são escritos como texto JSON dentro da célula, então nada se perde.

Por que proteger contra fórmulas?
Programas de planilha tratam uma célula que começa com =, +, - ou @ como fórmula, e uma fórmula pode buscar dados na internet ou executar comandos. Se os dados vieram de usuários ou de um site, ligue a proteção antes de abrir o arquivo no Excel. Números negativos de verdade não são alterados.

RFC 4180 — CSV
Wikipedia — Comma-separated values
OWASP — CSV Injection