1001Ferramentas
🔁 Conversores

Conversor CSV ↔ NDJSON

Conversão bidirecional entre CSV e NDJSON (Newline Delimited JSON), preservando tipos numéricos quando detectados.

Saída:

CSV para NDJSON

NDJSON, ou JSON Lines, é o formato de um objeto JSON por linha. Ele virou padrão de entrada em ferramentas de processamento em fluxo, em carga de dados para banco de documentos e em conjunto de treino, porque permite ler registro a registro sem carregar o arquivo inteiro na memória. Planilha e exportação de sistema, por outro lado, quase sempre saem em CSV.

A conversão vai nos dois sentidos: escolha o sentido e cole. De CSV para NDJSON, cada registro vira uma linha JSON com o cabeçalho dando nome aos campos; no caminho de volta, as chaves de todos os objetos formam o cabeçalho, na ordem em que apareceram pela primeira vez. O leitor de CSV é completo o bastante para o que importa: campo entre aspas com vírgula dentro, aspas duplicadas para representar aspas literais e quebra de linha dentro de um campo entre aspas são tratados corretamente, o que é justamente onde os conversores improvisados falham.

Um ponto sobre tipos: os valores saem como texto. Um CSV não carrega tipo nenhum — o número 007 pode ser um código que precisa manter os zeros, e converter para número o destruiria. Se o destino precisa de números ou booleanos de verdade, a conversão de tipo é decisão do consumidor, feita com conhecimento do que cada coluna significa.

Perguntas frequentes

Por que uma linha por objeto e não um array?
Porque é o que permite processar em fluxo. Com um array, o leitor precisa esperar o fechamento do colchete para ter um JSON válido; com uma linha por objeto, cada linha já é um documento completo. É por isso que ferramentas de log e de carga em lote preferem esse formato.
E se o CSV tiver colunas com o mesmo nome?
A última prevalece, porque cada linha vira um objeto e chave repetida sobrescreve. Se o seu CSV tem cabeçalho duplicado, renomeie antes de converter — caso contrário a perda acontece em silêncio.
O arquivo pode ser grande?
A conversão acontece na memória do navegador, então arquivo de centenas de megabytes vai travar a aba. Para esse tamanho, o caminho é uma ferramenta de linha de comando que processe em fluxo. Esta página resolve bem o tamanho que se copia e cola.

Ferramentas Relacionadas