Ir para o conteúdo

Conversor JSON ↔ CSV

Conversor JSON ↔ CSV

Conversão bidirecional entre CSV/TSV e JSON com detecção automática de delimitador, mapeamento de cabeçalho, remoção de espaços e salto de linhas vazias. Útil para importação/exportação de dados, processamento de planilhas e preparação de payloads de API.

Conversor JSON ↔ CSV

🚀 Início rápido

  • Cole ou insira dados CSV/TSV no editor CSV à direita e o JSON à esquerda será sincronizado automaticamente
  • Você também pode inserir JSON no editor JSON à esquerda, e o CSV à direita também será sincronizado automaticamente.
  • O delimitador está definido como "Auto" por padrão. A ferramenta inspeciona a primeira linha e detecta vírgula, tabulação, ponto e vírgula ou barra vertical (|).
  • Quando "Usar linha de cabeçalho" está ativado, a primeira linha do CSV é usada como nome de chave do objeto JSON; quando desativado, a saída é convertida em um array bidimensional.
  • Use "Cortar campos" e "Ignorar linhas vazias" para limpar dados CSV confusos.
  • Cada editor pode ser baixado separadamente: o lado JSON baixa um arquivo .json e o lado CSV baixa um arquivo .csv ou .tsv com base no delimitador atual.

📌 Cenários comuns

  • Excel para JSON: copie células separadas por tabulações do Excel para o painel CSV e converta instantaneamente em uma matriz de objetos JSON.
  • Resposta da API para planilha: converta respostas JSON em CSV para análise no Excel ou no Planilhas Google.
  • Preparação de importação de banco de dados: converta conjuntos de dados CSV em JSON para importações de API em lote.
  • Análise de log: converta logs CSV em JSON para consultas estruturadas com ferramentas como jq.
  • Migração de configuração: alterne entre tabelas de mapeamento CSV e arquivos de configuração JSON.
  • Limpeza de dados: limpe rapidamente os dados exportados com corte de campo e salto de linha vazia.

🧭 Dicas de uso

  • Os dados colados do Excel geralmente são delimitados por tabulações e são detectados corretamente. Se a detecção estiver errada, escolha o delimitador manualmente.
  • Com "Usar linha de cabeçalho" ativado, a primeira linha é tratada como nome de coluna, não como dados. Se o seu CSV não tiver cabeçalho, desative essa opção para não perder a primeira linha de dados.
  • Se existirem nomes de cabeçalho duplicados, os sufixos serão adicionados automaticamente (por exemplo, nome, nome_2) para manter as chaves JSON exclusivas.
  • JSON → CSV funciona melhor com matrizes de objetos planos. Objetos/matrizes aninhados são serializados como strings JSON nas células.
  • Os campos que contêm delimitadores, novas linhas ou aspas duplas são automaticamente citados e escapados de acordo com as regras CSV.

⚠️ Limitações e compatibilidade

  • CSV é um formato tabular plano e não pode representar nativamente estruturas aninhadas. Objetos/matrizes JSON aninhados são serializados como strings e não podem ser totalmente restaurados na conversão reversa.
  • CSV armazena valores como texto. Após uma viagem de ida e volta JSON → CSV → JSON, números e booleanos podem retornar como strings.
  • BOM UTF-8 (\uFEFF) é removido automaticamente. Outras codificações (por exemplo, GBK ou Shift-JIS) não são suportadas; converta para UTF-8 primeiro.
  • Assim como o JSON em JavaScript, esta ferramenta segue os limites da IEEE 754. Números inteiros além do intervalo seguro de 53 bits podem perder precisão.

🔒 Privacidade e segurança

  • Todo o processamento acontece localmente no seu navegador. Seus dados nunca saem do seu dispositivo.

❓ Perguntas frequentes

O que é CSV e como ele está relacionado ao TSV e ao Excel?

CSV (Valores Separados por Vírgula) é um formato de tabela de texto simples onde cada linha é um registro e os campos são separados por vírgulas. TSV é a variante delimitada por tabulações. O Excel pode abrir e exportar ambos os formatos, mas o próprio .xlsx é um formato de pasta de trabalho binário. Esta ferramenta funciona com arquivos CSV/TSV de texto simples, não com arquivos .xlsx. Historicamente, o CSV não tinha um padrão único e estrito. Em 2005, a RFC 4180 definiu regras comuns: os campos são separados por vírgulas, os campos com caracteres especiais são colocados entre aspas duplas e as aspas dentro dos campos entre aspas são escapadas como duas aspas duplas. Diferentes aplicativos ainda implementam CSV com pequenas diferenças, e é por isso que problemas de importação/exportação são comuns.

Como funciona a detecção do delimitador "Auto"? Pode estar errado?

A ferramenta analisa a primeira linha do CSV, conta vírgulas, tabulações, ponto e vírgula e barras verticais (|) fora de aspas e escolhe o caractere mais frequente como delimitador. Para a maioria dos CSV/TSV bem formados, essa detecção é precisa. Pode falhar quando há apenas uma coluna (sem delimitador visível) ou quando o próprio conteúdo dos campos contém muitos caracteres delimitadores. Nesses casos, selecione o delimitador manualmente.

O que muda quando "Usar linha de cabeçalho" está ativado ou desativado?

Quando ativado, a primeira linha do CSV é tratada como nomes de colunas e cada registro é convertido em um objeto JSON com esses nomes como chaves (por exemplo, {"name": "Alice", "age": "30"}). Quando desativado, todas as linhas, inclusive a primeira, são tratadas como dados e convertidas em um array bidimensional (por exemplo, [["name", "age"], ["Alice", "30"]]). Na conversão JSON → CSV, ativar o cabeçalho grava as chaves do objeto na primeira linha do CSV.

Meu JSON contém objetos aninhados. Posso converter novamente sem perdas após CSV?

Não totalmente. Durante JSON → CSV, objetos/matrizes aninhados são serializados com JSON.stringify no texto da célula. Durante CSV → JSON, esses valores permanecem strings e não são analisados ​​automaticamente em objetos. Se você precisar de fidelidade estrutural, nivele o JSON antes da conversão.

Posso converter dados copiados diretamente do Excel?

Sim. Quando você copia um intervalo de células do Excel e o cola no editor CSV, os dados geralmente são delimitados por tabulações. A detecção automática identifica-o como TSV e converte corretamente. Se você quiser um download .csv delimitado por vírgula, mude o delimitador para vírgula antes de fazer o download.

Como as cotações e quebras de linha são tratadas em campos CSV?

De acordo com a RFC 4180: se o conteúdo do campo tiver delimitador, quebra de linha ou aspas duplas, o campo inteiro é envolvido por aspas duplas; aspas duplas dentro do campo são escapadas como duas aspas duplas consecutivas (""). Essa regra é aplicada tanto no parse de entrada quanto na geração de saída. Se as aspas não forem fechadas corretamente, será exibido o erro "As aspas CSV não estão fechadas".