Converter JSON para CSV: achatar um array de objetos
Um array JSON de objetos se mapeia para uma tabela CSV — uma linha por objeto, colunas a partir da união das chaves. O trabalho real está no quoting e no tratamento dos valores aninhados.
O formato «array de objetos»
CSV é uma tabela plana, então o JSON que converte limpinho é um array de objetos: cada objeto vira uma linha e cada chave vira uma coluna.
Construir o cabeçalho
Use a união das chaves de todos os objetos como cabeçalho, não só as do primeiro, para que registros com chaves a mais ou a menos continuem alinhados. As células faltantes ficam em branco.
Regras de aspas
Qualquer valor que contenha vírgula, aspas duplas ou quebra de linha precisa estar entre aspas duplas, com as aspas internas duplicadas, senão as colunas desalinham.
Valores aninhados
Objetos e arrays não têm forma plana em CSV: escreva-os como texto JSON dentro da célula (reversível) ou achate-os em colunas pontuadas como address.city.
Ordem do cabeçalho e estabilidade
Ordene a união das chaves ou fixe a ordem para as chaves do primeiro registro com os extras anexados ao final. Uma ordem estável de cabeçalho deixa os diffs entre exportações úteis e evita reembaralhar colunas a cada execução.
Formatação de datas e números
Planilhas reinterpretam valores de forma agressiva: IDs numéricos longos perdem precisão, datas ISO são reformatadas, zeros à esquerda somem. Se um valor precisa fazer uma ida e volta exata, coloque-o entre aspas e prefixe com uma apóstrofe ao colar no Excel.
Compatibilidade com Excel e Google Sheets
Use finais de linha CRLF e um BOM (UTF-8 com byte-order mark) para o Excel detectar Unicode. No Google Sheets, o BOM é opcional, mas a vírgula como delimitador e o escapamento por aspas duplas continuam valendo.
Do CSV de volta para JSON
Parseie as linhas com um split sensível a aspas (não dê split ingênuo por vírgula), use a primeira linha como nomes de campos e tente converter números, booleanos e datas ISO por coluna. A ida e volta nesta ferramenta mantém strings como strings, a menos que uma coluna seja totalmente numérica.
Armadilhas comuns
Estes são os problemas que quebram a maioria das exportações CSV.
- Vírgulas não escapadas dentro de valores de string
- Quebras de linha em células sem aspas envolvendo
- Codificações misturadas (UTF-8 vs Latin-1) gerando mojibake
- Inteiros grandes (IDs) truncados silenciosamente pelas planilhas
- Booleanos guardados como strings "true"/"false" em vez de TRUE/FALSE
Guias de reparação de JSON
Núcleos temáticos
- JSON Parse Errors: Read the Message, Jump to the Fix
- Fix Invalid JSON: From 'What's Wrong' to a Clean File
- JSON Formatter, Validator, Viewer: Pick the Right Tool
- Repair LLM JSON Output: Handling Almost-JSON from AI
- Privacy: JSON Tools That Don't Leave Your Browser
- JSON Interop: YAML, CSV, XML, JWT, Schema
Guias específicos
- Como decodificar strings Base64 (e payloads JWT)
- Codificação URL: codifique parâmetros de consulta e caminhos
- Converter YAML para JSON (e evitar erros de indentação)
- Converter JSON para XML: raiz, atributos e arrays
- Escapar JSON como literal de string (e decodificar JSON com codificação dupla)
- Corrigir vírgulas finais em JSON
- Corrigir aspas simples em JSON
- Corrigir chaves sem aspas em JSON
- Reparar JSON gerado por LLM
- Corrigir o erro de parse JSON: Expected Property Name
- JSON x literal de objeto JavaScript
- Valide o JSON antes das requisições de API
- Formatador JSON x JSON Repair
- Corrigir erros JSON Unexpected Token
- Conversor de JSON para objeto JavaScript