Dados · 2 min de leitura ·

JSON para CSV sem perder nenhum campo

Chaves aninhadas, campos opcionais e vírgulas dentro de textos: como a 4Dev achata um JSON bagunçado em um CSV pronto para a planilha.

Planilhas são planas; JSON não é. Toda conversão de JSON para CSV precisa decidir o que fazer com objetos aninhados, arrays e chaves que só alguns registros têm. É exatamente isto que o conversor da 4Dev faz.

Cada chave ganha uma coluna

A linha de cabeçalho é montada com as chaves de todos os objetos, na ordem em que aparecem pela primeira vez, e não só com o primeiro registro. Um registro sem uma chave recebe uma célula vazia, então as colunas nunca se deslocam e os campos opcionais nunca somem.

[{"id":1,"name":"Ada"},
 {"id":2,"name":"Alan","note":"optional"}]

id,name,note
1,Ada,
2,Alan,optional

Objetos aninhados viram colunas com sublinhado

Os objetos são achatados juntando as chaves com um sublinhado, então {"address":{"city":"Lisbon"}} vira uma coluna chamada address_city. Um array de valores simples vai para uma única célula ("admin, dev"), e um array de objetos fica como texto JSON na célula, então nada é descartado.

Vírgulas e aspas são escapadas para você

Qualquer valor com vírgula, aspas duplas ou quebra de linha fica entre aspas duplas, e as aspas internas são duplicadas: a regra padrão de CSV que o Excel e o Google Planilhas esperam.

2,"Alan, T.","says ""hi"""

Abrir o conversor de JSON para CSV