Conversor de CSV para JSON
Introdução
O Conversor de CSV para JSON faz a ponte entre dados em formato de folha de cálculo e JSON estruturado. Quer esteja a importar dados do Excel para uma aplicação web, a preparar payloads de API a partir de exportações de bases de dados ou a transformar ficheiros de configuração, esta ferramenta realiza a conversão com precisão e flexibilidade.
Ao contrário de ferramentas de linha de comandos que requerem instalação ou serviços online que enviam os seus dados para um servidor, o Conversor de CSV para JSON da Toollect opera inteiramente dentro do seu navegador. Cada tecla pressionada atualiza a saída JSON em tempo real, dando-lhe feedback imediato. Com zero dados transmitidos pela rede, oferece tanto velocidade como privacidade.
Com deteção inteligente de delimitadores, inferência de tipos, múltiplos formatos de saída e uma tabela de pré-visualização ao vivo, este conversor lida com os casos extremos que tornam a conversão CSV frustrante: campos entre aspas contendo vírgulas, valores multilinha, contagens de colunas inconsistentes e muito mais.
Como funciona
O Conversor processa os seus dados CSV através de um pipeline de múltiplas etapas projetado para precisão e flexibilidade.
Análise sintática
A ferramenta lê a sua entrada CSV linha por linha usando um analisador personalizado que segue as convenções RFC 4180. Ele lida corretamente com:
- Campos entre aspas: Campos entre aspas duplas podem conter delimitadores, quebras de linha e outros caracteres especiais
- Aspas escapadas: Aspas duplas dentro de um campo são representadas como duas aspas duplas consecutivas (
"") - Campos vazios: Delimitadores consecutivos produzem valores de string vazia
- Espaços em branco finais: Espaços fora das aspas são removidos para uma saída limpa
Deteção de delimitador
No modo de deteção automática, a ferramenta analisa as primeiras linhas dos seus dados, testando cada delimitador candidato (vírgula, tabulação, ponto e vírgula) e selecionando aquele que produz a contagem de colunas mais consistente. Pode sempre substituir manualmente o delimitador detetado.
Inferência de tipos
Com a inferência de tipos ativada, a ferramenta examina cada valor e converte padrões reconhecidos:
- Números: Inteiros e decimais (
42,3.14,-1.5,1e10) tornam-se números JSON - Booleanos:
trueefalse(insensível a maiúsculas/minúsculas) tornam-se booleanos JSON - Nulo:
null(insensível a maiúsculas/minúsculas) torna-senullJSON - Strings: Todo o resto permanece uma string
Também pode ativar a análise de valores JSON, que tenta analisar campos que se parecem com objetos ou arrays JSON.
Formatação da saída
A saída JSON final é gerada de acordo com as opções selecionadas:
- Array de objetos: Cada linha torna-se um objeto com os valores da linha de cabeçalho como chaves (padrão)
- Array 2D: Saída como um array de arrays, ignorando a linha de cabeçalho
- Chaveado pela primeira coluna: Um objeto onde o valor da primeira coluna de cada linha de dados se torna a chave
A saída pode ser formatada (com indentação de 2 ou 4 espaços) ou minimizada numa única linha.
Utilização
Usar o Conversor de CSV para JSON da Toollect não requer configuração ou registo. Siga estes passos:
-
Abra a ferramenta — Navegue até à página do Conversor de CSV para JSON. A interface mostra uma zona de upload, uma área de texto de entrada, um painel de configurações e uma área de saída.
-
Introduza os seus dados — Cole o texto CSV diretamente na área de texto, ou clique na zona de upload (ou arraste e solte um ficheiro .csv) para carregar um ficheiro.
-
Revise as configurações — A ferramenta deteta automaticamente o delimitador e ativa cabeçalhos e inferência de tipos por padrão. Ajuste estas configurações conforme os seus dados:
- Selecione um delimitador diferente se a deteção automática estiver incorreta
- Ative ou desative "Primeira linha como cabeçalhos" se os seus dados não tiverem uma linha de cabeçalho
- Desative a inferência de tipos para manter todos os valores como strings
-
Pré-visualize os dados analisados — Clique em "Mostrar pré-visualização" para ver uma vista tabular dos seus dados CSV analisados. Isto ajuda a verificar se o delimitador e as configurações de cabeçalho estão corretos.
-
Verifique a saída JSON — A saída JSON é atualizada automaticamente enquanto escreve. A área de texto de saída é só de leitura para evitar edições acidentais.
-
Copie ou descarregue — Clique em "Copiar" para copiar o JSON para a sua área de transferência, ou "Descarregar JSON" para guardá-lo como ficheiro .json.
Tutorial
Este tutorial mostra como converter um ficheiro CSV exportado do Excel num array JSON para uso numa aplicação web.
Cenário: Tem uma folha de cálculo Excel com inventário de produtos e quer importá-la para uma aplicação web que espera JSON.
- Exportar do Excel — Guarde a sua folha de cálculo como ficheiro CSV. Deverá obter algo como:
Product Name, SKU, Price, In Stock, Category
Widget Pro, WDG-001, 29.99, true, Tools
Gadget X, GDG-002, 49.95, false, Electronics
Super Tool, SUP-003, 99.00, true, Tools
Accessory Pack, ACC-004, 14.99, true, Accessories
-
Abra o Conversor de CSV para JSON e arraste o ficheiro CSV para a zona de upload. A ferramenta carrega o ficheiro, deteta o delimitador de vírgula e converte os dados instantaneamente.
-
Revise a pré-visualização — Clique em "Mostrar pré-visualização" para ver a representação tabular. Confirme que a linha de cabeçalho foi analisada corretamente.
-
A saída JSON aparece como:
[
{
"Product Name": "Widget Pro",
"SKU": "WDG-001",
"Price": 29.99,
"In Stock": true,
"Category": "Tools"
},
{
"Product Name": "Gadget X",
"SKU": "GDG-002",
"Price": 49.95,
"In Stock": false,
"Category": "Electronics"
},
{
"Product Name": "Super Tool",
"SKU": "SUP-003",
"Price": 99,
"Category": "Tools"
},
{
"Product Name": "Accessory Pack",
"SKU": "ACC-004",
"Price": 14.99,
"In Stock": true,
"Category": "Accessories"
}
]
Repare que os valores Price são números (não strings), os valores In Stock são booleanos e o valor "In Stock" em falta para "Super Tool" é omitido.
- Experimente transformações de chaves — Selecione "snake_case" no menu suspenso de formato de chaves. A saída muda para:
[
{
"product_name": "Widget Pro",
"sku": "WDG-001",
"price": 29.99,
"in_stock": true,
"category": "Tools"
}
]
- Experimente o formato chaveado — Selecione "Chaveado pela primeira coluna" para obter um objeto indexado por nome de produto:
{
"Widget Pro": {
"SKU": "WDG-001",
"Price": 29.99,
"In Stock": true,
"Category": "Tools"
},
"Gadget X": { ... }
}
- Descarregue o resultado — Clique em "Descarregar JSON" para guardar a saída como ficheiro .json pronto para a sua aplicação web.
Dicas profissionais
Domine estas técnicas para aproveitar ao máximo o Conversor de CSV para JSON da Toollect:
-
Use a pré-visualização primeiro: Verifique sempre a tabela de pré-visualização antes de confiar na saída JSON. Colunas desalinhadas, delimitadores errados ou problemas de codificação são imediatamente visíveis na pré-visualização tabular
-
Lide com zeros à esquerda: Códigos postais, números de telefone e IDs têm frequentemente zeros à esquerda. Desative a inferência de tipos para mantê-los como strings — caso contrário,
00123torna-se no número123 -
Normalize nomes de colunas: Use a definição de formato de chaves para transformar cabeçalhos inconsistentes num formato uniforme. Para integração com API, camelCase ou snake_case são geralmente preferidos
-
Limpe o seu CSV primeiro: Remova linhas vazias no final, verifique a consistência da contagem de colunas e certifique-se de que os campos entre aspas usam aspas duplas para melhores resultados
-
Combine com outras ferramentas: Converta CSV para JSON aqui, depois use o Formatador JSON para validar e inspecionar a estrutura
Alternativas
Embora o Conversor de CSV para JSON da Toollect ofereça um conjunto abrangente de funcionalidades, existem várias alternativas para diferentes casos de uso.
| Ferramenta / Método | Melhor para | Limitações |
|---|---|---|
| Conversor de CSV para JSON da Toollect | Conversão baseada em navegador, privacidade, personalizável | Requer carregamento inicial da página |
| PapaParse (biblioteca JavaScript) | Análise programática de CSV em Node.js ou navegador | Requer programação, sem interface gráfica |
| csvkit (linha de comandos) | Processamento e conversão de CSV baseado em Python | Requer instalação de Python, apenas linha de comandos |
| Serviços de conversão online | Conversões rápidas pontuais | Dados são enviados para servidores, preocupações com privacidade |
| Excel Power Query | Conversão de CSV para JSON dentro do Excel | Requer Excel, limitado a conjuntos de dados pequenos |
| jq (linha de comandos) | Processamento de saída JSON de conversões CSV | Requer etapa separada CSV-para-JSON, apenas linha de comandos |
Para a maioria dos utilizadores que precisam de uma conversão CSV para JSON rápida, privada e rica em funcionalidades sem sair do navegador, o conversor Toollect oferece o melhor equilíbrio entre funcionalidade e conveniência.
Resolução de problemas
| Problema | Causa provável | Solução |
|---|---|---|
| JSON mostra "[null]" ou objetos vazios | Deteção de delimitador falhou ou delimitador errado selecionado | Selecione manualmente o delimitador correto no menu suspenso |
| Valores de coluna em falta/deslocados | Um campo contém o caractere delimitador sem aspas | Coloque campos com delimitadores entre aspas duplas no seu CSV de origem |
| Números com zeros à esquerda perdem os zeros | A inferência de tipos converte-os em valores numéricos | Desative a inferência de tipos para manter todos os valores como strings |
| Erro "Linha X tem Y colunas, esperadas Z" | Contagem de colunas inconsistente entre linhas | Verifique o CSV para delimitadores extra/em falta; campos entre aspas com quebras de linha podem abranger várias linhas |
| Pré-visualização mostra caracteres ilegíveis | A codificação do ficheiro não é UTF-8 | Re-exporte o seu CSV como UTF-8 a partir da sua folha de cálculo |
| Upload de ficheiro grande falha | Ficheiro excede o limite de 10 MB | Cole os dados diretamente na área de texto em vez de fazer upload |
| Saída JSON está vazia | Campo de entrada está vazio ou contém apenas espaços | Certifique-se de que os seus dados CSV estão colados corretamente |
| Botão Copiar não responde | Permissões da área de transferência do navegador | Verifique as configurações do navegador; use Ctrl+C (Cmd+C) como alternativa |
Especificações técnicas
Benchmarks de desempenho
| Tamanho dos dados | Tempo de processamento | Uso de memória |
|---|---|---|
| 1 KB (10 linhas) | < 1 ms | < 1 MB |
| 100 KB (1000 linhas) | < 10 ms | < 5 MB |
| 1 MB (10000 linhas) | < 100 ms | < 50 MB |
Detalhes técnicos
- Analisador: Analisador CSV personalizado compatível com RFC 4180 com tratamento completo de aspas/escape
- Inferência de tipos: Deteção baseada em regex para números, booleanos, valores nulos
- Deteção de delimitador: Pontuação heurística nas primeiras 10 linhas, testando vírgula/tabulação/ponto e vírgula
- Motor de saída:
JSON.stringify()nativo com indentação configurável - Manipulação de ficheiros: API
FileReadercom limite de tamanho de 10 MB - Área de transferência:
navigator.clipboard.writeText()com indicador de feedback de 2 segundos - Download:
Blob+URL.createObjectURL()para geração de ficheiros em memória
Compatibilidade com navegadores
| Navegador | Versão mínima | Estado |
|---|---|---|
| Google Chrome | 80+ | Suporte total |
| Mozilla Firefox | 75+ | Suporte total |
| Apple Safari | 13+ | Suporte total |
| Microsoft Edge | 80+ | Suporte total |
| Samsung Internet | 13+ | Suporte total |
| Opera | 67+ | Suporte total |
Privacidade e segurança
- Zero transmissão de dados: todo o processamento CSV ocorre na memória do navegador
- Os uploads de ficheiros são lidos localmente através da API FileReader e nunca transmitidos
- Sem cookies, localStorage ou sessionStorage utilizados
- Sem scripts de análise ou rastreio na página da ferramenta
- Sem registo, início de sessão ou chaves de API necessárias
Recursos
- Conversão instantânea de CSV para JSON com pré-visualização ao vivo
- Deteção inteligente automática de delimitador com substituição manual
- Inferência de tipos para números, booleanos e valores nulos
- Múltiplos formatos de saída: array de objetos, array 2D e objetos chaveados
- Transformação de maiúsculas/minúsculas das chaves (camelCase, snake_case, lowercase, UPPERCASE, Capitalize)
- Pré-visualização de dados recolhível para verificar o CSV antes de converter