Converter CSV para JSON
Este conversor gratuito transforma um arquivo CSV em JSON com um objeto por linha, usando a linha de cabeçalho como chaves e convertendo números, true e false nos seus tipos, enquanto CEPs e outros valores com zeros à esquerda continuam como texto. Seu navegador faz a conversão, então o CSV não é enviado. As datas continuam como texto porque JSON não tem tipo de data, e o resultado é um único documento JSON, não JSON Lines.
Um arquivo não foi convertido corretamente? Escreva para [email protected], de preferência com um pequeno arquivo de exemplo, e o problema será corrigido.
O essencial
- Entrada: CSV (.csv). Saída: JSON (.json).
- Seus arquivos não são enviados: o trabalho é feito no navegador, no seu próprio dispositivo.
- Tamanho: sem limite fixo; arquivos muito grandes são limitados pela memória do dispositivo.
- Precisa de um navegador atual (Chrome, Edge, Firefox ou Safari) no computador, tablet ou celular; nada para instalar.
- Grátis e sem cadastro.
Por que converter CSV para JSON
Aplicativos web, APIs, dados de teste, geradores de sites estáticos e bancos de dados NoSQL esperam JSON, enquanto os dados muitas vezes começam em uma planilha salva como CSV. Este conversor transforma cada linha em um objeto JSON, com a linha de cabeçalho como chaves. Ele detecta o separador e a codificação, inclusive arquivos com ponto e vírgula e vírgula decimal do Excel europeu ou em português do Brasil, e mostra as primeiras linhas para você conferir as colunas. Números viram números JSON, true e false viram booleanos e células vazias viram null, enquanto valores com zeros à esquerda, como CEPs, continuam como texto. Se preferir decidir os tipos você mesmo, mantenha tudo como texto. Colunas com pontos no nome, como address.city, podem virar objetos aninhados, e você pode escolher uma lista de linhas em vez de objetos quando o resultado precisar ser o menor possível. A saída é JSON em UTF-8, com recuo para ficar fácil de ler.
Como converter CSV para JSON
- Solte seu arquivo CSV na caixa ou clique para escolhê-lo.
- Confira as colunas na prévia e escolha como os valores e a estrutura devem ficar.
- Clique em “Converter para JSON” e baixe o arquivo .json.
O que muda na conversão
A primeira linha é o cabeçalho
A primeira linha dá os nomes das chaves. Nomes vazios viram column_1, column_2 e assim por diante, e um nome repetido recebe _2, para que nenhum valor seja sobrescrito. Exclua antes, na planilha, as linhas de título que estiverem acima do cabeçalho.
Números que não são números
CEPs como 01310100, códigos como 007 e números com mais de 15 dígitos continuam como texto, porque transformá-los em números JSON eliminaria zeros ou dígitos. Números com separador de milhar, como 1,250.00 ou 1.250,00, também continuam como texto.
Datas continuam como texto
JSON não tem tipo de data, então as datas são gravadas exatamente como estão no CSV, por exemplo "2024-05-01". Se o seu programa precisar de um formato específico, converta as datas na planilha antes de salvar o CSV.
Chaves aninhadas
Com a opção de aninhar, as colunas address.city e address.zip viram um único objeto address. Se também existir uma coluna chamada address, as colunas com pontos continuam planas, para que nenhum valor se perca.
Sobre os formatos
CSV
CSV (valores separados por vírgula) é uma tabela em texto simples: uma linha por registro, com as células separadas por vírgula, ponto e vírgula ou tabulação. Excel, Google Planilhas, Numbers, todos os bancos de dados e a maioria das linguagens de programação leem e gravam CSV, por isso ele é a forma habitual de levar uma tabela de um programa para outro.
- Não há padrão para o separador: o Excel usa vírgula ou ponto e vírgula, conforme as configurações de idioma.
- Todo valor é texto; se 01310 é um número ou um CEP, quem decide é o programa que o lê.
- Não há planilhas, fórmulas, cores nem larguras de coluna, só os valores.
- A codificação não fica salva no arquivo; UTF-8 é a escolha segura, e o Excel precisa de um BOM para reconhecê-la.
JSON
JSON (JavaScript Object Notation) é o formato de texto que a maioria das APIs web, aplicativos e arquivos de configuração usa para dados. Os valores podem ser aninhados: um registro pode conter outro registro ou uma lista, o que uma tabela plana não consegue.
- Objetos contêm valores com nome e listas contêm valores em ordem; os dois podem ser aninhados em qualquer profundidade.
- Os valores são texto, números, true/false ou null, então um CEP escrito como "01310" continua sendo texto.
- JSON Lines (.jsonl, .ndjson) coloca um objeto JSON em cada linha, algo comum em logs e exportações de dados.
- O texto é sempre Unicode, normalmente UTF-8.
Perguntas frequentes
Meu arquivo CSV é enviado para algum lugar?
Não. Seu navegador lê o arquivo e grava o JSON no seu próprio dispositivo; nada é enviado a um servidor.
Quais separadores funcionam?
Vírgula, ponto e vírgula, tabulação e barra vertical são detectados automaticamente, assim como a linha "sep=" que o Excel às vezes adiciona. Se a prévia mostrar todos os valores em uma única coluna, escolha o separador você mesmo.
Posso obter JSON Lines?
Não diretamente. A ferramenta grava um único documento JSON. A maioria dos programas que leem JSON Lines também lê uma lista JSON, e uma lista JSON é o que a maioria das APIs e ferramentas espera.
E arquivos muito grandes?
Arquivos de até 200 MB funcionam. O JSON costuma ser duas a três vezes maior que o CSV, porque cada valor carrega sua chave, então a estrutura como lista de linhas gera um arquivo menor.