CSV para JSON

Cole uma exportação de planilha e receba um array JSON de registros pronto para código e APIs.

Nível 0 · navegador · ilimitado
87 caracteres
Saída
[
  {
    "sku": "A-001",
    "nome": "Caneca, grande",
    "preco": 12.5,
    "estoque": true
  },
  {
    "sku": "B-002",
    "nome": "Pôster \"Azul\"",
    "preco": 8,
    "estoque": false
  }
]
Registros2
Colunas4

Lendo CSV do jeito certo

CSV parece trivial até um campo ter vírgula, aspas ou quebra de linha. A RFC 4180 resolve isso colocando o campo entre aspas duplas e duplicando as aspas internas: "Silva, ""Jr.""". Separar as linhas pelas vírgulas quebra esses arquivos; este conversor implementa as regras completas, então endereços, observações e descrições chegam inteiros.

A primeira linha vira as chaves de cada objeto. Com detectar tipos ligado, 42, 3.14, true, false e null viram números, booleanos e null do JSON; valores como 007 ou 01310-100 continuam strings, então CEPs e códigos mantêm os zeros à esquerda.

Exemplo resolvido

sku;nome;preco;estoque
A-001;"Caneca; grande";12.5;true
B-002;"Pôster ""Azul""";8;false

com o delimitador ponto e vírgula vira um array de dois objetos: {"sku": "A-001", "nome": "Caneca; grande", "preco": 12.5, "estoque": true} e {"sku": "B-002", "nome": "Pôster \"Azul\"", "preco": 8, "estoque": false}.

Como funciona

A página lê o texto numa passada com um parser RFC 4180: campos entre aspas podem conter o delimitador, aspas (escritas duas vezes) e quebras de linha, e os registros podem terminar com CRLF ou LF. O primeiro registro vira o cabeçalho, a menos que você desligue isso; aí cada linha vira um array. Com a detecção de tipos, uma célula que seja exatamente um número JSON, true, false ou null é convertida; o resto, inclusive números com zero à esquerda ou vírgula decimal, continua string. Use JSON para CSV no caminho inverso. Tudo roda nesta aba.

Perguntas frequentes

Meu CSV usa ponto e vírgula. Funciona?

Sim. Escolha o delimitador ponto e vírgula, comum em exportações do Excel configurado para o Brasil.

Por que 007 continuou string?

Zeros à esquerda não são permitidos em números JSON e costumam indicar um código, como um CEP, então a página mantém o texto.

Os campos podem ter quebra de linha?

Sim, se estiverem entre aspas, como a RFC 4180 permite.

Meu arquivo é enviado?

Não. Tudo roda no navegador.

Fontes

Revisado em 17 de out. de 2026 · vetores de teste fixtures/dev/csv-to-json/